如何为角度i18n使用JIT和AOT?

时间:2019-11-14 09:07:52

标签: angular internationalization

我想用angular i18n翻译我的应用程序。 我将使用JIT进行开发,并使用AOT进行生产。我是有角度的乞讨者,我不知道我们该怎么做。
如果我在我的app.module.ts中添加此代码:

const translations = require(`raw-loader!../locale/messages.en.xlf`);
...
providers: [
{provide: TRANSLATIONS, useValue: translations},
{provide: TRANSLATIONS_FORMAT, useValue: 'xlf'},
{provide: LOCALE_ID, useValue: "en"},
...

即使在运行ng serve(JIT)时进行了此修改,我的翻译也无法正常工作。如果我打印翻译,我可以看到我所有带有源/目标的翻译,但没有任何效果。
仅适用于AOT(ng build --prod --i18n-file src/locale/messages.en.xlf --i18n-format xlf --i18n-locale en)...
所以我有点困惑:
-为什么它适用于AOT,而我在提供程序中使用翻译字符串?
-为什么当我在提供程序中使用翻译字符串时运行ng serve时,它对JIT不起作用?

在此先感谢您的帮助,
最高

ps:如果您需要更多信息,请问我。

0 个答案:

没有答案