- {post.type && !post.type.includes('Page') && post?.page_cover && (
+ {post?.type && !post?.type.includes('Page') && post?.page_cover && (
{/* eslint-disable-next-line @next/next/no-img-element */}

@@ -41,7 +45,7 @@ export default function ArticleDetail({ post, recommendPosts, prev, next }) {
|
- {post.type[0] !== 'Page' && (<>
+ {post?.type[0] !== 'Page' && (<>
- {post.blockMap &&
}
+ {post &&
}
diff --git a/themes/hexo/LayoutSlug.js b/themes/hexo/LayoutSlug.js
index e2fec724..ee3143cf 100644
--- a/themes/hexo/LayoutSlug.js
+++ b/themes/hexo/LayoutSlug.js
@@ -15,6 +15,15 @@ import ArticleRecommend from './components/ArticleRecommend'
export const LayoutSlug = props => {
const { post, lock, validPassword } = props
+ if (!post) {
+ return }
+ {...props}
+ showCategory={false}
+ showTag={false}
+ >
+ }
+
if (!lock && post?.blockMap?.block) {
post.content = Object.keys(post.blockMap.block)
post.toc = getPageTableOfContents(post, post.blockMap)
@@ -50,7 +59,7 @@ export const LayoutSlug = props => {
{/* Notion文章主体 */}
- {post.blockMap && }
+ {post && }
diff --git a/themes/hexo/components/HeaderArticle.js b/themes/hexo/components/HeaderArticle.js
index 3e91179d..bd0bea4a 100644
--- a/themes/hexo/components/HeaderArticle.js
+++ b/themes/hexo/components/HeaderArticle.js
@@ -4,12 +4,15 @@ import formatDate from '@/lib/formatDate'
import { useEffect } from 'react'
export default function HeaderArticle({ post, siteInfo }) {
+ if (!post) {
+ return <>loading...>
+ }
const headerImage = post?.page_cover ? `url("${post.page_cover}")` : `url("${siteInfo?.pageCover}")`
const { isDarkMode } = useGlobal()
const { locale } = useGlobal()
const date = formatDate(
- post?.date?.start_date || post.createdTime,
+ post?.date?.start_date || post?.createdTime,
locale.LOCALE
)
@@ -71,7 +74,7 @@ export default function HeaderArticle({ post, siteInfo }) {
>}
- {post.type[0] !== 'Page' && (
+ {post?.type[0] !== 'Page' && (
<>
{
const { post, lock, validPassword } = props
+ if (!post) {
+ return
+ }
if (!lock && post?.blockMap?.block) {
post.content = Object.keys(post.blockMap.block)
diff --git a/themes/medium/components/ArticleDetail.js b/themes/medium/components/ArticleDetail.js
index a0ed321e..ddaa9a76 100644
--- a/themes/medium/components/ArticleDetail.js
+++ b/themes/medium/components/ArticleDetail.js
@@ -15,7 +15,7 @@ export const ArticleDetail = props => {
const { locale } = useGlobal()
const date = formatDate(
- post?.date?.start_date || post.createdTime,
+ post?.date?.start_date || post?.createdTime,
locale.LOCALE
)
return
@@ -48,7 +48,7 @@ export const ArticleDetail = props => {
{/* Notion文章主体 */}
- {post.blockMap && ()}
+ {post && ()}
diff --git a/themes/medium/components/Progress.js b/themes/medium/components/Progress.js
index 3680e157..d9a13ad9 100644
--- a/themes/medium/components/Progress.js
+++ b/themes/medium/components/Progress.js
@@ -10,7 +10,6 @@ const Progress = ({ targetRef, showPercent = true }) => {
const [percent, changePercent] = useState(0)
const scrollListener = () => {
const target = currentRef || document.getElementById('container')
- console.log(target)
if (target) {
const clientHeight = target.clientHeight
const scrollY = window.pageYOffset
diff --git a/themes/next/LayoutSlug.js b/themes/next/LayoutSlug.js
index 097f457b..8e7ddd72 100644
--- a/themes/next/LayoutSlug.js
+++ b/themes/next/LayoutSlug.js
@@ -11,6 +11,14 @@ import { ArticleLock } from './components/ArticleLock'
export const LayoutSlug = (props) => {
const { post, latestPosts, lock, validPassword } = props
+ if (!post) {
+ return
+ }
+ />
+ }
if (!lock && post?.blockMap?.block) {
post.content = Object.keys(post.blockMap.block)
diff --git a/themes/next/components/ArticleDetail.js b/themes/next/components/ArticleDetail.js
index 094b6b22..ab7f9608 100644
--- a/themes/next/components/ArticleDetail.js
+++ b/themes/next/components/ArticleDetail.js
@@ -21,7 +21,7 @@ export default function ArticleDetail(props) {
const { post, recommendPosts, prev, next, showArticleInfo } = props
const url = BLOG.LINK + useRouter().asPath
const { locale } = useGlobal()
- const date = formatDate(post?.date?.start_date || post.createdTime, locale.LOCALE)
+ const date = formatDate(post?.date?.start_date || post?.createdTime, locale.LOCALE)
return (