我按照官方文档中的说明在新的angular2项目中实现了i18n。 https://angular.io/docs/ts/latest/cookbook/i18n.html#!#i18n-attribute
翻译似乎有效,因为控制台中没有错误,如果从index.html中删除语言环境变量,我会看到默认文本。此外,使用Chrome开发工具检查来源,我可以看到已加载翻译文件。但是,翻译字段的页面中不会显示任何文本。
我也尝试过这里建议的实现: https://plnkr.co/edit/4euRQQ?p=preview,使用ts文件而不是xlf文件。
import { TRANSLATION } from './messages.fr';
platformBrowserDynamic().bootstrapModule(AppModule,
{
providers: [
{ provide: TRANSLATIONS, useValue: TRANSLATION },
{ provide: TRANSLATIONS_FORMAT, useValue: 'xlf' },
{ provide: LOCALE_ID, useValue: 'fr' }
]
});
它给出了相同的结果,页面中没有文字。我在不同的组件中使用它,而不是直接在应用程序组件模板中使用它,它有什么区别吗?我是否必须将某些内容导入自定义组件才能使其正常工作?
控制台中没有错误。任何指导都将不胜感激。
由于
答案 0 :(得分:0)
我现在已经解决了这个问题,错误在于翻译文件语法