这篇文章主要介绍Angular中如何使用$watch监听object属性值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
创新互联建站是专业的华容网站建设公司,华容接单;提供成都做网站、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行华容网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!Angular中的$watch可以监听属性值的变化,然后并做出相应处理。
常见用法:
$scope.$watch("person", function(n, o){ //todo something... })
但是对于一个对象中的某个属性值变化时,$watch似乎不管用了。
示例代码:
{{person}}
Status: {{status}}
我们为输入框绑定了person对象的name属性,然而当我们改变输入框的值时候,{{person}}确实改变了,然而并没有出现我们想要的change字符。
效果:
我们需要为$watch方法额外添加一个true参数,使之达到我们想要的效果:
$scope.$watch("person", function(n, o){ if(n == o){ return; } $scope.status = "changed"; },true)
$watch方法完整的使用方式是这样的:
$watch(watchExpression, [listener], [objectEquality]);
第一个是监听的参数名称,剩下两个可选参数分别为处理函数和是相等比较的方式,对于后者文档如是说:Compare for object equality using angular.equals instead of comparing for reference equality. 即是否使用angular.equals方法进行比较。
如此效果变为:
以上是“Angular中如何使用$watch监听object属性值”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联网站建设公司行业资讯频道!
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。