NextJs:pid路由

时间:2019-09-17 07:49:23

标签: javascript reactjs next.js

有人知道具有:pid的路径的NextJS的exportPathMap:(next.config.js)是什么吗?

我的expotPathMap

  exportPathMap: async (defaultPathMap) => {
  return {
  '/': { page: '/', query: {} },
  '/login': { page: '/login', query: { verifySuccess: null } },
  '/signup': { page: '/signup', query: {} },
  '/search': { page: '/search', query: { s: '', category: '' } },
  '/messages': { page: '/messages', query: { t: '' } },
  '/messages/:pid': { page: '/messages/:pid', query: { t: '' } },

问题是我受命创建一个看起来像 / messages / 925255252 而不是使用诸如/ message?id = 9252552252&t = foo

之类的查询参数的页面

现在在构建和导出时出现此错误

Cannot find module for page: /messages/:pid

文件。

  

页面>消息> index.js(/messages)、[pid].js(messages /:id)

PS。 不使用SSR,渲染是客户端的!

PPS。 在localhost上一切正常,需要在生产环境中工作。

1 个答案:

答案 0 :(得分:1)

根据next.js的频谱chat,您试图实现的目标是不可能的:

  

您必须返回所有可能路线的映射,动态匹配   即使我们支持它也不会有任何效果,您怎么知道   导出时/ show /:id是什么?我们必须确切知道   在导出时将要导出什么

因此,您必须生成所有可能的页面(在您的情况下,您需要所有可能的消息ID),example获取数据库。
或切换到SSR并处理您的请求服务器端。