27 lines
793 B
JavaScript
27 lines
793 B
JavaScript
import { getGetServerSideProps } from '@/api/ssrApollo'
|
|
import { SUB_FULL } from '@/fragments/subs'
|
|
import { CenterLayout } from '@/components/layout'
|
|
import Post from '@/components/post'
|
|
import { useQuery } from '@apollo/client'
|
|
import { useRouter } from 'next/router'
|
|
import PageLoading from '@/components/page-loading'
|
|
|
|
export const getServerSideProps = getGetServerSideProps({
|
|
query: SUB_FULL,
|
|
notFound: (data, vars) => vars.sub && !data.sub
|
|
})
|
|
|
|
export default function PostPage ({ ssrData }) {
|
|
const router = useRouter()
|
|
const { data } = useQuery(SUB_FULL, { variables: { sub: router.query.sub } })
|
|
if (!data && !ssrData) return <PageLoading />
|
|
|
|
const { sub } = data || ssrData
|
|
|
|
return (
|
|
<CenterLayout sub={sub?.name}>
|
|
<Post sub={sub} />
|
|
</CenterLayout>
|
|
)
|
|
}
|