removed unnecessary state

This commit is contained in:
Kim, Jimin 2022-01-09 11:30:33 +09:00
parent 7f01059dc3
commit 489cfbe543
2 changed files with 19 additions and 26 deletions

View file

@ -43,12 +43,6 @@ enum PageType {
UNSEARCHABLE, UNSEARCHABLE,
} }
interface SeriesData {
seriesHome: string
prev?: string
next?: string
}
const fetchContent = async (pageType: PageType, url: string) => { const fetchContent = async (pageType: PageType, url: string) => {
try { try {
if (pageType == PageType.UNSEARCHABLE) { if (pageType == PageType.UNSEARCHABLE) {
@ -76,12 +70,6 @@ const Page = () => {
const [pageType, setPageType] = useState<PageType>(PageType.POST) const [pageType, setPageType] = useState<PageType>(PageType.POST)
const [isLoading, setIsLoading] = useState(true) const [isLoading, setIsLoading] = useState(true)
// only used when the page is a series post
// todo: merge with pageData
const [seriesData, setSeriesData] = useState<SeriesData | undefined>(
undefined
)
useEffect(() => { useEffect(() => {
const url = location.pathname.replace(/\/$/, "") // remove trailing slash const url = location.pathname.replace(/\/$/, "") // remove trailing slash
const _pageType = categorizePageType(url) const _pageType = categorizePageType(url)
@ -136,6 +124,8 @@ const Page = () => {
toc: undefined, toc: undefined,
content: "No content", content: "No content",
seriesHome: "",
image: "", image: "",
overview: "", overview: "",
badges: [], badges: [],
@ -171,18 +161,6 @@ const Page = () => {
const prev = curr - 1 const prev = curr - 1
const next = curr + 1 const next = curr + 1
setSeriesData({
seriesHome: seriesURL,
prev:
prev >= 0
? map.series[seriesURL].order[prev]
: undefined,
next:
next < map.series[seriesURL].order.length
? map.series[seriesURL].order[next]
: undefined,
})
const post = map.posts[url] const post = map.posts[url]
pageData.content = fetched_content.content pageData.content = fetched_content.content
@ -194,6 +172,16 @@ const Page = () => {
pageData.wordCount = post.wordCount pageData.wordCount = post.wordCount
pageData.tags = post.tags || [] pageData.tags = post.tags || []
pageData.seriesHome = seriesURL
pageData.prev =
prev >= 0
? map.series[seriesURL].order[prev]
: undefined
pageData.next =
next < map.series[seriesURL].order.length
? map.series[seriesURL].order[next]
: undefined
break break
} }
@ -251,8 +239,8 @@ const Page = () => {
{/* next/previous series post buttons */} {/* next/previous series post buttons */}
{pageType == PageType.SERIES && ( {pageType == PageType.SERIES && (
<NextPrevButtons <NextPrevButtons
prevURL={seriesData?.prev} prevURL={pageData.prev}
nextURL={seriesData?.next} nextURL={pageData.next}
/> />
)} )}

View file

@ -62,6 +62,11 @@ export interface PageData {
toc?: string toc?: string
content: string content: string
// series-specific data
seriesHome: string
prev?: string
next?: string
// portfolio-specific data // portfolio-specific data
image: string // image url image: string // image url