请参阅此plunk。
它基于角度快速启动示例,此处模板正在调用函数。
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
template: `<h1>Hello {{name}}</h1>{{print()}}`
})
export class AppComponent {
name = 'Angular';
public print() {
console.log(`Called`);
return "Hello";
}
}
打印功能被调用4次,但UI仅显示3次。 (参考this second plunk)。使用第二个插件时,Angular会抛出错误表达式在检查后发生了变化。
如果我启用生产模式,它只会被调用两次。
我的问题是:
答案 0 :(得分:1)
根本没有建议在 Angular2 bindings/interpolation
中使用 template: `<h1>Hello {{name}}</h1>{{myVar}}`
name:string='';
constructor(){
this.print();
}
public print():string {
console.log(`Called`);
this.name = "Hello";
}
。
您应该使用变量,如下所示,
{{1}}