在我的Next.js应用程序中,我遇到了路由问题.我在"Pages"目录中设置了一个名为about.tsx的页面,但当我try 使用其各自的URL(localhost:3000/about)访问它时,页面无法正确加载并发送:

此页找不到404错误.

我已经仔细判断了我的代码和目录 struct ,一切似乎都很正常.导致此问题的原因可能是什么,我如何解决它?

next js folder structure

有人能帮我解决这个问题吗?

推荐答案

app and pages folders have a special meaning in Next.js.不要像你那样把这两个人嵌套在一起.您可以在使用最后一个问题创建项目时 Select 所需的选项:

enter image description here

带有page.tsxapp文件夹表明您在上图中的最后一道题中 Select 了Yes.因此,要拥有/about路由,您需要创建一个名为about in app的文件夹,其中包含page.tsx,通向app/about/page.js.

如果您正在学习教程,并且想要使用pages路由,最简单的方法是创建一个新项目并相应地回答终端:

npx create-next-app@latest

Node.js相关问答推荐

我的位置也移动时左右拖动谷歌 map

当建议在第二代上运行云功能时,现在是否有新的Firestore AdminClient可供使用?

Mongoose查询-如何根据当前查找ID获取其他集合并将其插入到当前查找中?

如何使用Nextjs路由从下一步/导航在新选项卡中通过";router.ush";打开链接

获取页面大小为10的所有文章,每篇文章填充一些所需的用户信息

Webpack:如何避免导出函数的重命名?

使用 axios 和 Cheerio (Node js) 抓取 google 搜索

Mongodb - 在数组数组中查找()

如何从动态Typescript 文件加载模块

NodeJs 过滤掉目录异步

在 ExpressJS 中将变量传递给 JavaScript

具有多个条件的mongoose 查找

如何为 node.js 服务器分配域名?

Node.JS 中的基本 HTTP 身份验证?

遍历 NodeJS 中的一系列日期

Passport 的 req.isAuthenticated 总是返回 false,即使我硬编码 done(null, true)

Puppeteer 记录在 page.evaluate

- configuration.output.path:提供的值public不是绝对路径!使用 Webpack

node --experimental-modules,请求的模块不提供名为的导出

Express js 阻止 GET /favicon.ico