import { Box, chakra, Divider, Flex, Heading, HStack, IconButton, Image, VStack } from "@chakra-ui/react" import Comments from "components/comments/comments" import Container from "components/container" import LikeButton from "components/posts/unicorn-like" import { MarkdownRender } from "components/markdown-editor/render" import PostAuthor from "components/posts/post-author" import TagTextCard from "components/posts/tag-text-card" import SEO from "components/seo" import siteConfig from "configs/site-config" import useSession from "hooks/use-session" import Nav from "layouts/nav/nav" import PostNav from "layouts/nav/post-nav" import PageContainer from "layouts/page-container" import { cloneDeep } from "lodash" import { useRouter } from "next/router" import { title } from "process" import React, { useEffect, useState } from "react" import { FaBookmark, FaGithub, FaRegBookmark, FaShare, FaShareAlt } from "react-icons/fa" import { ReserveUrls } from "src/data/reserve-urls" import { Comment } from "src/types/comments" import { Post } from "src/types/posts" import { Tag } from "src/types/tag" import { requestApi } from "utils/axios/request" import UnicornLike from "components/posts/unicorn-like" const PostPage = () => { const router = useRouter() const id = router.query.post_id const [post, setPost]: [Post, any] = useState(null) const [comments,setComments]: [Comment[],any] = useState([]) const session = useSession() useEffect(() => { if (id) { getData() } }, [id]) const getData = async () => { const res = await requestApi.get(`/post/${id}`) setPost(res.data) getComments(res.data.id) } const onLike = async () => { await requestApi.post(`/story/like/${post.id}`) const p = cloneDeep(post) if (post.liked) { p.likes += -1 p.liked = false } else { p.likes += 1 p.liked = true } setPost(p) } const getComments = async (id) => { const res = await requestApi.get(`/story/comments/${id}`) console.log(res.data) setComments(res.data) } return ( <> } mt="2rem"> {post && <> {post.title} {post.rawTags.map(tag => )} getComments(post.id)}/> {/* */} {/* */} {/* */} } /> } /> {post.creatorId === session?.user.id && router.push(`${ReserveUrls.Editor}/post/${post.id}`)} icon={} /> } {/* */} } /> } /> } ) } export default PostPage