我正在奥雷利亚做一个项目,并使用aurelia-i18n插件。到目前为止,它看起来很棒,当我更改地区时,翻译正在工作并立即更新界面语言。
问:使用多个翻译文件相对于单个翻译文件是否具有逻辑、组织或性能优势?例如:
我应该把所有东西都放进一个文件里吗?
my-aurelia/locales/en/translation.json
my-aurelia/locales/es/translation.json或者我应该分离成多个翻译文件?
my-aurelia/locales/en/nav.json
my-aurelia/locales/en/words.json
my-aurelia/locales/en/phrases.json
my-aurelia/locales/es/nav.json
my-aurelia/locales/es/words.json
my-aurelia/locales/es/phrases.json下面是我如何为这个例子实例化插件(在my-aurelia/src/main.js,的export function configure(aurelia) {中),但我正处于一个重要的设计十字路口。
aurelia.use.plugin('aurelia-i18n', (instance) => {
// register backend plugin
instance.i18next.use(XHR);
// adapt options to your needs (see http://i18next.com/docs/options/)
instance.setup({
backend: {
loadPath: '/locales/{{lng}}/{{ns}}.json',
},
lng : 'es',
ns: ['words','phrases','nav'],
defaultNS: 'words',
attributes : ['t','i18n'],
fallbackLng : 'en',
debug : false
});
});一个json语言文件还是多个json语言文件?还有其他建议吗?
发布于 2017-02-09 21:31:38
就性能而言,每种语言的单个文件在初始加载时会稍微快一些,因为所需的请求较少。但是,这种微观优化是可以忽略不计的,您应该更加重视代码的结构和可读性,特别是对于在您之后从事代码工作的其他人来说。
单个文件会变得如此大,以至于人们很难找到正确的条目并更改JSON文件的内容吗?如果没有,而且您也不期望它会增长到这样的大小,那么最好使用一个文件。
人们会不知道你是把“Gracias/谢谢”写成单词(谢谢)还是用短语(谢谢)?我建议使用一个对不熟悉您的代码的人来说很清楚的结构。
最后,我没有看到您提到但我自己使用过的组织结构之一是根据您的视图订购i18n文件。这使得查找需要更改的文件变得非常容易,因为您已经知道您正在工作的是哪个视图,因此不必查找i18n。
https://stackoverflow.com/questions/40021494
复制相似问题