+ {' '} + {post.title} +
++
-
+
- + 本文作者:{' '} + + {BLOG.author} + + +
- + 本文链接:{' '} + + {url} + + +
- + 本博客所有文章除特别声明外,均采用 BY-NC-SA + 许可协议。转载请注明出处! + +
diff --git a/components/ArticleDetail.js b/components/ArticleDetail.js new file mode 100644 index 00000000..cbcc3713 --- /dev/null +++ b/components/ArticleDetail.js @@ -0,0 +1,192 @@ +import BLOG from '@/blog.config' + +import { useRouter } from 'next/router' +import Progress from '@/components/Progress' +import TagItem from '@/components/TagItem' +import formatDate from '@/lib/formatDate' +import { Code, Collection, CollectionRow, Equation, NotionRenderer } from 'react-notion-x' +import ShareBar from '@/components/ShareBar' +import Comment from '@/components/Comment' +import Link from 'next/link' +import Image from 'next/image' + +import 'prismjs' +import 'prismjs/components/prism-bash' +import 'prismjs/components/prism-markup' +import 'prismjs/components/prism-python' +import 'prismjs/components/prism-javascript' +import 'prismjs/components/prism-typescript' +import RecommendPosts from '@/components/RecommendPosts' +import TocDrawer from '@/components/TocDrawer' +import TocDrawerButton from '@/components/TocDrawerButton' +import { useGlobal } from '@/lib/global' +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' +import { faEye, faFolderOpen } from '@fortawesome/free-solid-svg-icons' +import BlogAround from '@/components/BlogAround' +import { useRef } from 'react' + +const mapPageUrl = id => { + return 'https://www.notion.so/' + id.replace(/-/g, '') +} + +/** + * + * @param {*} param0 + * @returns + */ +export default function ArticleDetail ({ post, blockMap, recommendPosts, prev, next }) { + const targetRef = useRef(null) + const drawerRight = useRef(null) + const url = BLOG.link + useRouter().asPath + const { locale } = useGlobal() + const date = formatDate(post?.date?.start_date || post.createdTime, BLOG.lang) + return ( + <> + + +
没有找到文章 {(currentSearch &&