allow user to visit/bookmark empty search page

This commit is contained in:
keyan 2022-05-18 16:09:44 -05:00
parent 16957cba34
commit 9287e7b93c
3 changed files with 8 additions and 7 deletions

View File

@ -5,8 +5,8 @@ import RemoveMarkdown from 'remove-markdown'
export function SeoSearch ({ sub }) {
const router = useRouter()
const subStr = sub ? ` ~${sub}` : ''
const title = `${router.query.q} \\ stacker news${subStr}`
const desc = `SN${subStr} search: ${router.query.q}`
const title = `${router.query.q || 'search'} \\ stacker news${subStr}`
const desc = `SN${subStr} search: ${router.query.q || ''}`
return (
<NextSeo

View File

@ -112,7 +112,7 @@ export const ITEM_WITH_COMMENTS = gql`
export const ITEM_SEARCH = gql`
${ITEM_FIELDS}
query Search($q: String!, $cursor: String) {
query Search($q: String, $cursor: String) {
search(q: $q, cursor: $cursor) {
cursor
items {

View File

@ -5,7 +5,7 @@ import SearchItems from '../components/search-items'
import { useRouter } from 'next/router'
import { SeoSearch } from '../components/seo'
export const getServerSideProps = getGetServerSideProps(ITEM_SEARCH, null, null, 'q')
export const getServerSideProps = getGetServerSideProps(ITEM_SEARCH)
export default function Index ({ data: { search: { items, cursor } } }) {
const router = useRouter()
@ -13,9 +13,10 @@ export default function Index ({ data: { search: { items, cursor } } }) {
return (
<Layout noSeo>
<SeoSearch />
<SearchItems
items={items} cursor={cursor} variables={{ q: router.query?.q }}
/>
{router.query?.q &&
<SearchItems
items={items} cursor={cursor} variables={{ q: router.query?.q }}
/>}
</Layout>
)
}