我有一个网页作为单个实体的编辑器,它作为一个深层图在$ scope.fieldcontainer属性。在我从我的REST API(通过$ resource)获得响应后,我向“fieldcontainer”添加一个手表。我使用这个手表来检测页面/实体是否“脏”。现在我使保存按钮反弹,但真的我想让保存按钮不可见,直到用户弄脏的模型。
原文链接:https://www.f2er.com/angularjs/147390.html我得到的是手表的一个触发器,我认为发生,因为.fieldcontainer = …分配是在我创建我的手表后立即发生。我在想只是使用一个“dirtyCount”属性来吸收初始的假警报,但感觉非常hacky …我想,有一个“角度习惯”的方式来处理这 – 我不是唯一的使用手表检测脏模型。
这里是我设置我的手表的代码:
$scope.fieldcontainer = Message.get({id: $scope.entityId },function(message,headers) { $scope.$watch('fieldcontainer',function() { console.log("model is dirty."); if ($scope.visibility.saveButton) { $('#saveMessageButtonRow').effect("bounce",{ times:5,direction: 'right' },300); } },true); });
我只是一直认为,有一个更干净的方式来做这个比保护我的“UI脏”代码与“if(dirtyCount> 0)”…