这两天我在读Nextjs 国际化文档
我想使用两种语言:
en
,fa
。我也可以在它们之间切换,URL 如下所示:
https://example.com/en
https://example.com/fa
我想做的就是将
en
定义为默认值,因此 预期结果 是:
https://example.com/
https://example.com/fa
知道我该怎么做吗?我在文档中找不到与此相关的任何内容。
这是我的代码:
/src/app/[lang]/page.js
// 'use client'
import { getDictionary } from './dictionaries'
import {useRouter} from "next/navigation";
// const router = useRouter();
export default async function Page({ params: { lang } }) {
const dict = await getDictionary(lang) // en
return (
<>
<button>{dict.products.cart}</button>
</>
) // Add to Cart
}`
/src/app/[lang]/dictionaries.js
import 'server-only'
const dictionaries = {
en: () => import('../dictionaries/en.json').then((module) => module.default),
fa: () => import('../dictionaries/fa.json').then((module) => module.default),
}
export const getDictionary = async (locale) => dictionaries[locale]()