Angular2:我们可以在模板中插入哪些表达式

Posted

技术标签:

【中文标题】Angular2:我们可以在模板中插入哪些表达式【英文标题】:Angular2: what expressions can we interpolate in template 【发布时间】:2016-11-04 06:47:10 【问题描述】:

我读到我们可以插入 javascript 表达式。我们可以插入的有效 Javascript 表达式列表是什么?到目前为止,对于插值,我有一个显示的属性,例如。 object.property,像 1+1 这样的短表达式我们还能插入什么 Javascript 表达式?

【问题讨论】:

【参考方案1】:

Angular2 中的表达式在允许范围方面与 Angular 中的表达式非常相似。

禁止宣传副作用的 JavaScript 表达式,包括

分配(= +=,-=) 使用 new 关键字 使用分号或逗号链接表达式 递增 (++) 和递减运算符

此外,不支持像 |& 这样的位运算符

通常,将复杂的 JavaScript 逻辑放在控制器或组件中而不是视图中是个好主意。这是因为Separation of Concerns 设计原则,使代码更加模块化和可读性。

https://angular.io/docs/ts/latest/guide/template-syntax.html#!#template-expressions

【讨论】:

您的回答是正确的,但他要求的是 angular2 - 也就是文档链接已关闭。 Angular 5 中似乎允许使用分号,至少在 (event)="" 处理程序中是这样。【参考方案2】:

您可以使用 Angular 2 默认管道来评估插值内的表达式。请参考以下链接 https://www.npmjs.com/package/angular2-pipes#sum

【讨论】:

以上是关于Angular2:我们可以在模板中插入哪些表达式的主要内容,如果未能解决你的问题,请参考以下文章

BigQuery 流式插入使用模板表数据可用性问题

在 angular2 视图模板中传递枚举

超简单Python将指定数据插入到docx模板指定位置渲染并保存

Angular 2 覆盖组件

Angular2 - 用 html 插入字符串

将模板添加为 innerHTML 时,Angular 2 绑定/事件不起作用