Angular translate - 如果无效,请选择另一个密钥

时间:2016-09-13 11:13:03

标签: angularjs angular-translate

如果第一个密钥不存在,有没有办法告诉ng-translate使用另一个密钥?我们可以使用 translate-default

来实现这一目标
<any translate="possibly.non.existing.key" translate-default="Translation failed"></any>

但我也想要默认翻译,所以我用它:

<any translate="possibly.non.existing.key" translate-default="{{'existing.key' | translate}}"></any>

这就是问题 - 如果没有'existing.key'密钥,默认转换也会失败。有没有安全方法来实现这一目标? E.g:

<any translate="possibly.non.existing.key || existing.key" translate-default="Translation failed"></any>

2 个答案:

答案 0 :(得分:0)

您可以使用$ translate.instant;

编写自己的指令

但这是糟糕的设计。好的设计是使用后备语言,它提供所有翻译。

答案 1 :(得分:0)

如果possibly.non.existing.key字符串我们可以与空白字符串

进行比较
 <any translate="possibly.non.existing.key===""?existing.key : possibly.non.existing.key" translate-default="Translation failed"></any>