相关疑难解决方法(0)

如何在 Next.js 中为非默认语言环境生成动态路径?

我正在使用 next-i18next 构建一个具有国际化功能的 Next.js 应用程序。为我的网站的所有页面生成英语和法语页面,但具有动态路由的页面除外:(即blog/[id]/[blog-title])。对于具有动态路由的页面,会生成英语页面,但不会生成法语页面。

我应该指出,两种语言的博客条目都是相同的。因此,如果用户单击列表中的博客条目,他们将获得相同的博客条目。

当法语用户访问具有动态路由的页面时,他们会收到 404。我是 React 和 Next 的新手,所以我可能会在这里做一些愚蠢的事情。

// next-i18next.config.js
module.exports = {
  i18n: {
    locales: ['en', 'fr'],
    defaultLocale: 'en',
    localeDetection: true,
  },
}
Run Code Online (Sandbox Code Playgroud)
//
// blog\[id]\[title] 
//
export async function getStaticPaths() {
  const response = await axios.get('https://api.myappi.com/blog')
  const posts = response.data

  const paths = posts.map((post: Props) => ({
    params: { id: post.Id, title: post.Title },
  }))  
 
  return { paths, fallback: false }
}

export async function getStaticProps(props: IStaticProps) {
  const { id, locale …
Run Code Online (Sandbox Code Playgroud)

javascript internationalization next.js

12
推荐指数
1
解决办法
6269
查看次数

标签 统计

internationalization ×1

javascript ×1

next.js ×1