嗨,我刚开始玩 nextjs,看看它是否适合我的用例。我想用一些动态路由导出站点。
我的页面文件夹结构如下
page
locales
[locale]
[slug].js
Run Code Online (Sandbox Code Playgroud)
当我运行时,next develop我可以在http://localhost:3000/locales/de-DE/summer-dress-f.
所以现在我试图用next.config.js类似的方式导出页面
module.exports = {
exportPathMap: function() {
return {
"/locales/de-DE/summer-dress-f": {
page: "/locales",
query: { locale: "de-DE", slug: "summer-dress-f" }
}
};
}
};
Run Code Online (Sandbox Code Playgroud)
next build运行良好,但是当我运行时next export出现错误
Error: Cannot find module for page: /locales
at pageNotFoundError (/Users/bmathew/Desktop/workspace/next-demo/node_modules/next-server/dist/server/require.js:13:17)
Run Code Online (Sandbox Code Playgroud)
任何想法我在这里错过了什么?
终于想通了。路径图应该看起来像
module.exports = {
exportPathMap: function() {
return {
"/locales/de-DE/summer-dress-f": {
page: "/locales/[locale]/[slug]",
query: { locale: "de-DE", slug: "summer-dress-f" }
}
};
}
};
Run Code Online (Sandbox Code Playgroud)
页面组件命名应该是唯一的。所以我有 about.tsx 名称为:AboutPage 和 faqs.tsx 名称为:AboutPage 以及,将 faqs.tsx 修改为唯一修复它:)
| 归档时间: |
|
| 查看次数: |
7402 次 |
| 最近记录: |