Ember-i18n 位置回退

Ember-i18n location fallback

我正在尝试将 ember-i18n 引入到我当前的项目中,以管理不同英语种类的翻译。具体来说,旨在处理 en-US 和一般 en 单词。我遇到的问题是,即使我将 i18n.locale 指定为 en-US,它仍然使用来自 en/translations.js 文件的翻译。即使 defaultLocaleconfig/environment.js

中设置为 en-US,也会发生这种情况

我指定了两个翻译文件:

locales/
├── en
│   └── translations.js
└── en-US
    └── translations.js

内容如下:

app/locales/en/translations.js

export default {                                                                                                                                                                                                                                                                                                                
  cheque: 'Cheque',                                                                                                                                                                                                                                                                                                           
  province: 'Province',                                                                                                                                                                                                                                                                                                       
  postalCode: 'Postal Code',                                                                                                                                                                                                                                                    
};

app/locales/en-US/translations.js

export default {                                                                                                                                                                                                                                                                                                              
  cheque: 'Check',                                                                                                                                                                                                                                                                                                            
  province: 'State',                                                                                                                                                                                                                                                                                                          
  postalCode: 'Zip Code',                                                                                                                                                                                                                                                                                                     
};    

知道为什么我无法让位置回退按预期工作吗?

参考文献:

Ember-i18n Wiki - Location Fallback

James A. Rosen 在 tweet 中回答了我的问题。问题是文件夹需要小写(en-us 而不是 en-US)。

The default Ember-CLI resolver downcases all module names.

因为它没有识别出我有一个 en-us 文件夹,所以它默认为 en 翻译。