跳过$观看初次通话

alu*_*lun 7 javascript angularjs

因此,为可怕的头衔提前道歉.我真的不知道这些东西的所有正确的角度术语.

我在范围内有这样的代码:

$scope.catName = 'Le cat'

//<-- Magic goes here

$scope.$watch('catName', function () {
    //[...]
})
Run Code Online (Sandbox Code Playgroud)

现在,由于角度等到下一个摘要(正确的术语?)来评估手表,我的初始分配('Le cat')将触发手表.

我希望这个配置不会触发手表,但在此之后更改会这样做.

有没有办法重置catName的'脏状态'?

Js-fiddle:http://jsfiddle.net/7DNrD/1/

Abh*_*ndi 16

检查此解决方法

http://jsfiddle.net/7DNrD/5/

$scope.catName = 'Le cat'

$scope.$watch('catName', function (newValue, oldValue) {
    if(oldValue === newValue){
        return;
    }
    //[...]
})
Run Code Online (Sandbox Code Playgroud)