小编Bil*_*mud的帖子

Nextjs - 使用 getServerSideProps 获取单个帖子数据

我正在使用 Nextjs + Strapi 构建一个新闻网站,因为新闻网站是高度动态的,需要每分钟推送更新,所以我无法使用,getStaticProps因为即使使用增量静态再生,这种在构建上获取数据的方法也没有任何意义,此外该网站必须具有高级搜索和用户帐户,用户可以在其中个性化他们想要阅读的新闻类别。

我能够用来getServerProps在布局中获取主菜单数据(新闻类别),我创建了动态路由,但是当涉及到获取属于它的新闻文章(单一类别)时,我找不到任何明确的文档。

我尝试在./pages/api文件夹中创建一个外部方法,以使用as变量getCategoryData.js从外部 api(Strapi 后端)获取单个类别数据,我能够正确获取数据,但我尝试了多种方法将类别数据分配给页面主体方法内部,它没有成功并且返回未定义。axioscategory.slugconst category

这正是我在单一类别页面中所做的: ./pages/category/[slug]/index.js

import { useRouter } from 'next/router'
import DefaultLayout from "../../../components/layouts/default";
import { getCategory } from "../../api/getCategoryData";

const CategoryArticles = ({ menuItems }) => {
    const router = useRouter()
    const { slug } = router.query

    const category  = getCategoryData(slug); 
    console.log(category) // here returns undefined !!!

    return (
        <DefaultLayout menuItems={ menuItems }>
            <div>  { category.name } </div>
        </DefaultLayout> …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs fetch-api strapi next.js

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

fetch-api ×1

javascript ×1

next.js ×1

reactjs ×1

strapi ×1