Angular JS 1.4.7 +打字稿; 这是一个then(),称为内部控制器。
在$ digest之前,此代码打印实际对象值(selectedCity对象)。
$摘要后,此代码打印undefined
。但为什么呢?
.then((response:any) => {
console.log("city " + stringify(response));
$timeout(() => {
this.selectedCity = response;
console.log("before digest: " + stringify(this.selectedCity));
$scope.$digest();
console.log("after digest: " + stringify(this.selectedCity));
});
return response;
});
答案 0 :(得分:0)
$摘要后,此代码打印undefined。但为什么
因为$digest
进行范围绑定传播。例如。如果将foo
带入具有隔离范围的指令中并且指令修改它,则除非$digest
处于活动状态,否则不会发生更改。