将i18n数据存储在数据库中是否可行?

3

我正在开发一款多语言网页应用程序,但是我在决定如何存储i18n数据方面遇到了困难。

一方面,我可以采用传统的方式将短语保存到JSON文件中并从那里加载。但对于我的应用程序,我正在使用create-react-appfirebase,这使得这种方式非常不便(加载短语没问题,但我也希望我的i18n库能将缺少翻译的内容保存到文件中,这不太容易,因为我需要设置一个小的express服务器来处理文件修改)。

另一方面,我可以直接将所有内容存储在数据库中。这将使这个过程更简单,但这样做是否好?是否存在任何陷阱或安全问题?(我知道没有人可能会关心盗取翻译文本,但如果它被改变了,那对用户来说就不好了)


如果有人可以访问您的数据,那么您的翻译问题就是最不用担心的了。 - juergen d
1个回答

1

我更喜欢使用JSON格式。如果你无法上传".json"文件,可以使用".js"文件而不会有任何不便。例如:

en.js

module.exports = {
    "sayHi": "hello",
};

es.js

module.exports = {
    "sayHi": "hola",
};

如果您不想错过任何语言的翻译文本,可以创建一个小脚本,以便在缺少文本时提醒您。另一方面,您可以创建另一个脚本来填写不完整的语言并生成新的.js文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接