0

Ng2-translate directive给我带来了一些问题,但如果我做错了什么或者它是一个错误,我不明白。

在同一个组件的html模板上,翻译pipe工作正常,而翻译工作directive不工作。

尤其是:

<span translate>{{ feature.linkTxt }}</span> // works

<span [translate]="feature.linkTxt"></span> // not working

https://github.com/ocombe/ng2-translate#4-use-the-service-the-pipe-or-the-directive

我错过了什么还是应该工作?

编辑

变量feature.linkTxt指向string LEARNMORE,它对应于以下json字符串:

"LEARNMORE": "Learn more",

如果我使用相同的变量从指令切换到管道,则会显示翻译后的文本。

feature.linkTxt变量由以下*ngFor语句生成:

<li *ngFor="let feature of featureslist"> ...
4

2 回答 2

0

根据ng2-translate 示例,如果您的语言文件如下:

{
  HELLO: 'hello {{value}}'
}

然后你应该像这样使用它:

// there is single quote foe HELLO inside [translate]
<div [translate]="'HELLO'" [translateParams]="{value: 'world'}"></div>

所以我认为你的 json 就像:{ feature : { linkTxt : 'Your Text' } }你应该像这样使用它:

<span [translate]="'feature.linkTxt'"></span>
于 2016-12-23T06:04:19.723 回答
0

事实证明,这是一个已知的开放错误。

https://github.com/ocombe/ng2-translate/issues/355

于 2016-12-23T06:17:22.140 回答