reactjs - 如何在配置文件中使用 NextJS 重定向
问题描述
我想使用 nextjs 重定向功能将旧路径重定向到新路径,一旦用户到达旧路径,服务器应该返回状态码 301。我有一个这样的配置文件:
module.exports = (phase, { defaultConfig }) => {
const config = withFonts(
withImages(
withSass({
publicRuntimeConfig: {
CMS_HOST: process.env.CMS_HOST,
},
trailingSlash: true,
exportPathMap: function() {
return {
"/": { page: "/" }
};
},
cssModules: false,
env: {
CMS_HOST: process.env.CMS_HOST,
CMS_HOST_DEV: process.env.CMS_HOST_DEV
}
})
)
)
return config;
};
我尝试添加如下函数,但它不起作用:
module.exports = (phase, { defaultConfig }) => {
const config = withFonts(
withImages(
withSass({
publicRuntimeConfig: {
CMS_HOST: process.env.CMS_HOST,
},
trailingSlash: true,
exportPathMap: function() {
return {
"/": { page: "/" }
};
},
redirects() {
return [{
source: '/team/:slug*',
destination: '/about-us/:slug*',
permanent: true,
}]
},
cssModules: false,
env: {
CMS_HOST: process.env.CMS_HOST,
CMS_HOST_DEV: process.env.CMS_HOST_DEV
}
})
)
)
return config;
};
谢谢,
解决方案
你失踪async
了redirect
redirects
是一个异步函数,它期望返回一个数组,其中包含具有source
、destination
和permanent
属性的对象
参考
https://nextjs.org/docs/api-reference/next.config.js/redirects
推荐阅读
- java - 无法从另一个活动传递值(仅传递空值)
- python-3.x - 计算句子中的字母(Python)
- java - 如何将 setContentView(View view) 方法移动到片段
- html - 我想要一个高度相同的 img 旁边的 div,同时使用 100% 的页面宽度
- sml - SML NJ 中的 insertSorted 比较函数
- python - 从数据框中删除特定字符串
- parsing - 无法为递归下降解析器获得 LL(1) 形式的语法
- javascript - 通过 jest 测试一个类时,它是否处理导入?
- azure-devops - 如何从 YAML 文件传递 Azure ARM 模板对象值?
- c# - Azure Functions V1 用户机密