根据动态获取的密钥获取标签文本

时间:2018-06-29 12:54:21

标签: angularjs

我正在制作具有多种语言的应用程序。因此,我有2个不同的文件,其中包含典型的密钥对标签文本。 现在,对于一种情况,根据从服务器获取的ID,我需要保留该ID并显示标签文本。 如果我不太清楚,请原谅我打算实现的伪指令:-

    <td>{{language.{{button.btnId}}}}</td>

有什么办法可以做到这一点?

注意,我这样做是因为应用程序中的某些按钮受到限制。

2 个答案:

答案 0 :(得分:1)

如果language是一个对象,则这样使用。

<td>{{ language[button.btnId] }}</td>

答案 1 :(得分:0)

注意:不是该问题的直接答案,已经给出了答案,但是您可能会发现这很有用,因此不适合发表评论:

使用AngularJS,我将使用 angular-translate 处理我的应用程序中的i18n。在非常不同的应用程序中对其进行了多次测试,它既稳定又强大。

https://github.com/angular-translate/angular-translate

您也可以通过npm获取它。

他们在制作它时考虑了很多因素,这几乎是一个标准,如果没有它,我很少会看到(这是OFC的个人经验)严肃的多语言AngularJS应用程序,因此我肯定会采用随时可用的解决方案而不是重新发明。

在此示例中,您只需使用{{ LABELNAME | translate}}进行角度转换即可根据应用程序中设置的语言在任何模板中获取翻译。不仅语法更好,而且建议的将翻译存储在带有标签的JSON文件中的方法比将其保存在控制器中要好得多。