我正在使用react js,我正在创建一个多语言网站。
有没有办法创建一个javascript文件,我可以放置所有文本,标签,然后在网站上使用它们?
我怎么能这样做?
答案 0 :(得分:2)
如果您想将i18n添加到您的应用中,有几种方法可以实现。在SO中,您可以找到this之类的解决方案。雅虎创建了一个名为React Intl的库(插件?)来完成同样的工作。
但是如果你想创建自己的文件,你可以创建一个json文件,如:
{
"en":{
"okButton": "OK",
...
},
"es:{
"okButton": "Aceptar",
...
}
"de": { ... }
}
然后只选择一种语言。或者您可以为每种语言创建一个语言文件,这将为您提供更大的灵活性和更小的文件。
假设您为每种语言(i18n_en.json, i18n_es.json
...)创建了一个文件,然后您可以检查要加载的当前语言是什么,并使用Ajax调用加载所需的文件,生成URL类似的东西:
const LANG_URL='/myPath/lang/i18n_';
var langFileUrl= LANG_URL+ language+'.json';