next.js - 为什么我的应用程序不路由到其自定义页面?下一个js

标签 next.js

我有一个 nextjs 应用程序。我的页面文件夹如下所示

pages
  games
  game

我的 server.js 中有一条路由,如下所示:

server.get('/games/:gameId', (req, res) => {
  const { gameId } = req.params

  app.render(req, res, 'game', { gameId })
})

我也尝试过 app.render(req, res, '/game', { gameId }),但这也不起作用。

/games/1 被点击时,我想路由到 game.js 。该应用程序可以很好地路由到 /games,但我无法路由到单个游戏 /games/1。我得到 nextjs 404。我缺少什么?在这种情况下 nextjs 如何路由?

最佳答案

您的代码可能如下所示:

server.get('/games/:gameId', (req, res) => {
  app.render(req, res, '/game', { ...req.query, ...req.params })
})

看看您自己的代码如何缺少 game 前面的前导斜杠?

app.render 第三个参数应该是 pages 目录中路由的完整路径。

第四个参数通常可以设置为 req.queryreq.params 的聚合,以包含您的 gameId 参数以及传输到 Next.js 代码的查询参数。

关于next.js - 为什么我的应用程序不路由到其自定义页面?下一个js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47950228/

相关文章:

javascript - 在 Next Js 项目 React SSR 中导入样式 Bootstrap

javascript - 如何为 electron + react js + next 进行生产构建

javascript - nextjs 将数据传递给组件

reactjs - 我可以在 Next.js 中使用 React Bootstrap 吗?

javascript - FetchError : request to http://localhost:3000/api/projects failed, 原因 : connect ECONNREFUSED 127. 0.0.1 :3000 (Express/Next. Js)

webpack - 在 Next.js 中编译 npm 模块

javascript - 使用 Apollo 客户端在 nextJs 中传递授权 header 的最佳方式?引用错误 : localStorage is not defined

javascript - 从 NPM 安装 CRA 和 NextJS 时出现问题(错误 : Couldn't find package "@babel/core" on "npm" registry)

javascript - 在构建时临时禁用 Next.js 页面

reactjs - NextAuth.js - 凭据身份验证,添加重置密码按钮