我有一个关于 Angular2 中的插值是如何完成的问题。
例如,我有组件 X,其值为 @Input();
在父组件中我有这样的代码:
<X [value]="{{'hello' | translate}} {{ 'world' | translate }}"></X>
但据我判断,这样的代码是错误的。
我使用 ng2-translate 进行国际化。
您能给我提供对我有帮助的信息链接吗?
如果您定义了一个@Input() some
在子组件中,您有 4 个选项:
- 不要传递任何内容 - 输入将是未定义的
<child-component ...
- 表达式将被解析为未定义并且this.some
将等于未定义
- 既不使用插值也不使用绑定语法 -
<child-component some="value" ...
- 表达式将被解析为一个字符串并且this.some
将等于value
string;
- 使用插值法 -
<child-component some="{{value}}"...>
- 使用绑定语法 -
<child-component [some]="value"...>
第三个和第四个选项都会产生完全相同的结果更新绑定函数 https://blog.angularindepth.com/the-mechanics-of-property-bindings-update-in-angular-39c0812bc4ce在零部件工厂。表达式将在父组件和输入的上下文中进行计算this.some
无论什么都将相等value
父组件的属性保留。
阅读更多内容模板语法手册 https://angular.io/guide/template-syntax.
看来在你的情况下插值会做得很好:
<X value="{{'hello' | translate}} {{ 'world' | translate }}"></X>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)