在Angular表达式中嵌套引号

时间:2015-03-07 19:13:36

标签: javascript html angularjs

在.js文件中,三重嵌套引号("一个'两个"三个"'")可以转义(see this post),在HTML中也可以使用字符引用(see this post)来实现。我在模板中的AngularJS表达式中遇到此问题。

我需要说明一下:

{{ 'PLURAL' | translate:"{ GENDER: 'male' }":"messageformat" }}

进入占位符元素:

<input placeholder="{{ 'PLURAL' | translate:"{ GENDER: 'male' }":"messageformat" }}">

我应该如何逃避报价以使其有效?

2 个答案:

答案 0 :(得分:4)

{ GENDER: 'male' }置于某个范围变量中,然后在插值指令表达式中使用它,这将更好地简化您的转义。

<强>标记

<div ng-init="maleFilter = { GENDER: 'male' }">
   <input ng-attr-placeholder="{{ 'PLURAL' | translate: maleFilter : 'messageformat' }}">
<div>

希望这可以帮助你,谢谢。

答案 1 :(得分:1)

供将来参考。这些角度翻译docs让我感到困惑。

有效的格式是:

placeholder="{{ 'PLURAL' | translate:{gender:'male'}:'messageformat' }}"