我有以下代码:
变量声明:
$scope.updateUploadView =
{
ready:{
inview:false,
text: "starting"
},
uploading:{
inview:false,
text: "uploading"
},
done:{
inview:false,
text: "done !"
}
};
$ watch:
angular.forEach($scope.updateUploadView, function(element, key) {
$scope.$watch(function () {
return element;
}, function() {
// do stuff
});
},true);
});
这里的问题是我想忽略$ watch来触发undefined属性,因为它会导致视图在应用程序启动时改变3次。是否有可能等待变量声明?
答案 0 :(得分:1)
只需检查手表功能中的未定义。
$scope.$watch(function () {
return element;
}, function(newValue, oldValue) {
if(!angular.isDefined(newValue) && angular.isDefined(oldValue)) {
// do stuff
}
});