Next.js的双语言应用问题



我目前正在使用Next.js开发一个web应用程序,它将支持2种语言:我的母语和英语。现在我在考虑下面的方法:

  1. 创建文件夹:/pages/en-us
pages/
|--(all app pages)
|--en-us/
|--(all app pages like above)
  1. 用LanguageContext包装应用程序,并使用中间件通过加载的IP来检测访问者的国家,如果他们是外国访问者或当前语言设置为英语,则重定向到/en-us路径。
    例如,/login将重定向到/en-us/login

我知道有一些多语言框架,如i18next,但我的web应用程序很简单,只需要2种语言,所以没有必要使用它们。

我的方法好吗?如果没有,请给我一些建议和建议。

我建议您下一步集成i18。否则,您必须面对代码重复,并且无法调整语言文件中的所有更改。中间件方法很有趣,但实际上我认为更好的方法是使用Navigator.language查看用户的语言。导航器。language只读属性返回一个字符串,表示用户的首选语言,通常是浏览器UI的语言。

我希望我能帮助你。祝你的项目好运!

最新更新