我有一个绑定到一个组件属性,其getter执行一个http调用,并且发现它被不断调用,没有结束。
HTML([已检查]绑定是问题):
<td><input type="checkbox" (change)="toggleAll($event.target.checked)" [checked]="allChecked" /></td>
组件属性:
_allChecked: boolean = false;
get allChecked() {
this.service.get('api/Tickets').subscribe(
data => {
let newChecked: boolean = data.filter(a => !a.Selected).length === 0;
if (newChecked != this._allChecked) {
this._allChecked = newChecked;
}
});
return this._allChecked;
}
如果我用'return false'替换所有代码它被称为理智的次数。为什么在http呼叫时行为会发生变化?如何阻止它疯狂?