随身笔记
随身笔记

avalon $fire重新监听方法

把不监听的属性名传入到$skipArray中时,在使用$watch重新监听时,值发生变化是不会回调了。

如果想让$skipArray里面的属性重新获得$watch重新监听的功能就使用$fire

*注意,要让$skipArray里面的属性重新获得$watch重新监听的功能,$watch不能使用*符号,必须指定详细的属性名。

参数1:传入要重新监听的属性名,
参数2:传入新值,
参数3:旧值
 

avalon.ready(function(){

   var vm=avalon.define({
     $id:'ceshi',
     value1:'测试值',
     $skipArray:['value1'],
     fn:function(){
       // vm.value1='测试值11';
       //console.log(vm['value1']);
       vm.$fire('value1','测试值11','测试值'); //属性名,新值,旧值
      }
    });

    vm.$watch('value1',function(a,b,c){  //不能使用*符号,只能指定具体属性
       console.log(a,b,c);
    });

    avalon.scan(document.getElementsByTagName('body')[0]);
});


<body ms-controller="ceshi">

  <button ms-click="@fn()">{{@value1}}</button>

</body>

去控制台看看是否重新获取$watch回调功能。

 

 

随身笔记

avalon $fire重新监听方法
把不监听的属性名传入到$skipArray中时,在使用$watch重新监听时,值发生变化是不会回调了。 如果想让$skipArray里面的属性重新获得$watch重新监听的功能就使用$fire *注意,要让$s…
扫描二维码继续阅读
2016-09-12