【问题标题】:Angular i18n internationalization of Component-Inputs组件输入的 Angular i18n 国际化
【发布时间】:2017-12-25 22:26:59
【问题描述】:

在我们新的 Angular 4 应用程序中,我们使用集成的 i18n 功能来翻译应用程序。在 AOT 编译时完成翻译。通用翻译功能运行良好,但是如何处理 Component-Inputs 的翻译:

<accordion-group [heading]="model.type == 3 ? 'Heading 1' : 'Heading 2'">....<accordion-group>

我们需要翻译[标题]。手风琴组内的代码是相同的,所以不能重复。

那么解决这个问题的最佳方法是什么?

【问题讨论】:

    标签: angular internationalization


    【解决方案1】:

    Angular4 中内置的国际化 API 对我来说仍然很奇怪。我们在项目中使用ngx-translate,所有翻译都放在语言文件中。 (对我们来说,这些文件采用.toml 格式并由toml-loader 加载。)在提到的库中,您可以通过这种方式实现目标:

    <accordion-group
        [heading]="(model.type == 3 ? 'Heading_1' : 'Heading_2') | translate">
    ...
    <accordion-group>
    

    因此,如果您可以选择-我会迁移...

    【讨论】:

    • 有没有办法使用内置API?目前感觉有点笨拙,但如果与 AOT 编译一起使用就可以了。如果可能的话,我会避免向项目添加额外的依赖项(......已经足够......)。
    • 我不知道内置 API 是否可行,因为我一直在使用 ngx-translate,甚至在 i18n 发布之前,我也没有想过要离开。如果可以的话,我强烈建议使用这个库。项目中可能有较少相关的依赖项需要摆脱;)
    • 你有没有想过使用内置 API 的方法?
    • 2 年后ngx-translate 仍然足够且更易于使用;)
    猜你喜欢
    • 1970-01-01
    • 2017-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-05
    • 2012-02-25
    • 1970-01-01
    相关资源
    最近更新 更多