首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从‘`getServerSideProps`’返回其他键。从notFound返回getServerSideProps对象

从‘`getServerSideProps`’返回其他键。从notFound返回getServerSideProps对象
EN

Stack Overflow用户
提问于 2021-04-01 20:33:44
回答 1查看 6.5K关注 0票数 2

我有下一个应用程序。我需要实现逻辑时,路由是不匹配的段塞页,然后显示404页错误。

接下来,就我所知的显示404页而言,我需要返回值为true.链接true对象。

所以问题是,当我从{ notFound: true }返回getServerSideProps时,为什么会出现这个错误?

错误:从getServerSideProps返回了其他密钥。用于组件的属性必须嵌套在props键下,例如: 返回{ props:{ title:'My Title',content:‘.’}} 需要移动的键: notFound。

代码:

代码语言:javascript
复制
export const getServerSideProps: GetServerSideProps = async ({ params, req }) => {

    const { slug } =  params;

    // first request
    const data = await (await fetch(`${process.env.NEXT_PUBLIC_API_HOST}/${slug}`)).json();

    // second request
    const user = await fetch(`${process.env.NEXT_PUBLIC_API_HOST}`, {
        method: "GET",
        headers: {
            'Authorization': 'Bearer ' + "jwt",
            'Content-Type': 'application/json',
        },
    });
    const userInfo = await user.json();


    if ( !slug || data.statusCode === 404 ) return { notFound: true }

    return {
        props: {
            title: "something",
            // my props in here
        },
    }
}

只有当我用url写了一些东西,并且有意识地将我的弹格页面从正确更改为不正确时,它才会产生错误。例如,从localhost/page/1localhost/page/blablabla

在本例中,当我将路由更改为错误时,如果情况是(if ( !slug || data.statusCode === 404 ) ).Next版本9.5.2,则使用此方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-01 21:25:13

您正在使用下一个版本9.5.2。支持notFound的最早版本是10.0.0。来自文档

所以你必须升级才能使用那个逻辑。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66911218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档