角度翻译翻译中的指令

时间:2015-06-04 12:00:44

标签: angularjs angularjs-directive angular-translate

我在i18n中使用angular-translate并希望在翻译中使用指令:

var translations = {
  TEST_1: 'Hello from <a href="/test">Test</a>',
  TEST_2: 'Hello from <user></user>'
};

app.directive('user', function() {
  return {
    template: '<a href="/test">Test</a>'
  };
});

完整的plnkr示例:http://plnkr.co/edit/jCCcvx7IEaAYUwyaQ7uH?p=preview

所以

<p translate="TEST_1"></p>
<p translate="TEST_2"></p>

应该是一样的。第一个(没有指令)起作用,第二个不起作用。它转换<user></user>,但Angular似乎没有意识到它并且没有做它的指示魔法。

1 个答案:

答案 0 :(得分:7)

尝试使用translate-compile指令:

<p translate="TEST_2" translate-compile></p>

来自docs

  

从版本2开始,翻译本身可以进行后期处理   在当前范围的上下文中(使用$ compile)。这意味着任何   翻译值本身使用的指令现在可以作为   预期