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

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

【问题讨论】:

    标签: javascript angular angular2-template angular2-directives angular2-components


    【解决方案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

    【讨论】:

      猜你喜欢
      • 2016-12-02
      • 2012-03-30
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-02
      相关资源
      最近更新 更多