我有一个指令,即正在侦听点击正文,它会更新对象中的属性。如果我记录对象的变量测试,它总是具有真值,但如果我记录myObj,我会看到测试已更新。该怎么办?????
scope.myObj.test = false;
angular.element('body').unbind().click(function () {
scope.$apply(function () {
console.log(scope.myObj, 'here the test prop is true');
console.log(scope.myObj.test, 'here the test prop is still false');
if (!scope.myObj.test)
scope.myObj.test = true;
});
});
答案 0 :(得分:0)
console.log(scope.myObj, 'here the test prop is true');
console.log(scope.myObj.test, 'here the test prop is still false');
这是不可能的 - 线条是连续的,它们之间没有任何变化。
如果您使用的是chrome开发人员工具,请注意,如果您将对象输出到控制台,则会在展开时对其进行评估。
相反,试试这个:
console.log(JSON.stringify(scope.myObj));
console.log(scope.myObj.test);