在ngx-translate中使用链接路由

时间:2018-01-11 07:14:17

标签: angular ngx-translate

我使用 Angular 5 ngx-translate for i18n。现在我有以下问题,到目前为止找不到解决方案:

模板:

Please <a routerlink="/signup">Signup now</a>!

现在这个字符串应该通过翻译json文件进行翻译。但是没有解析routerlink:

Json语言文件:

"signin": "Please <a routerlink="/signup">Signup now</a>!"

我找到了一个解决方法,将句子分为三个部分,但这不是一个方便的方法,因为可能会发生三个部分与句子结构不匹配(取决于语言)。

还有另一种方法可以解决这个问题吗?

谢谢&amp;最好, 迈克尔

3 个答案:

答案 0 :(得分:0)

Try this:

<p [innerHtml]="{{ 'withLink' | translate }}"></p>

And in your JSON file:

"signin": "Please <a routerlink="/signup">Signup now</a>!"

答案 1 :(得分:0)

如果使用属性绑定,则不能使用插值。

[property]="some logic"
attribute="{{ some logic }}"

答案 2 :(得分:0)

我遇到了同样的问题。由于 'routerLink' 是 angular 中的指令,它不会被渲染,但 'href' 是标签的一个属性,它将被解析。这不是一个理想的解决方案,因为“href”会导致整个应用程序重新加载,而“routerLink”在不重新加载页面的情况下进行导航,并且组件会代替路由器出口呈现。但这是一种解决方法并且仍然有效。

模板:

<p [innerHtml]="'signin' | translate"></p>

JSON 语言文件:

"signin": "Please <a href="/signup">Signup now</a>!"