我正在构建一个多语言的Web应用程序,并且我正在努力决定如何存储i18n数据。
一方面,我可以采用将短语保存到JSON文件并从中加载的传统方式。但是对于我的应用程序,我使用的是 create-react-app 和 firebase ,这非常不方便(加载短语很好,但我也想使用i18n库将丢失的译文保存到文件中,这并不是一件容易的事,因为我必须设置一个小型的 express 服务器来处理文件修改)。
另一方面,我可以将所有内容存储在数据库中。这样可以使此过程变得更加简单,但是这样做还可以吗?是否有陷阱或安全问题? (我知道没人会在乎窃取翻译后的文本,但是如果以某种方式进行了更改,那对用户来说就不好了)
答案 0 :(得分:0)
我更喜欢使用JSON格式。如果您无法上传“ .json”文件,则可以使用“ .js”文件而不会带来任何不便。例如:
en.js
module.exports = {
"sayHi": "hello",
};
es.js
module.exports = {
"sayHi": "hola",
};
如果您不想错过任何一种语言的翻译文本,则可以创建一个小脚本,该脚本会在缺少文本时提醒您。另一方面,您可以创建另一个脚本来填充不完整的语言并生成新的.js文件。