相思资源网 Design By www.200059.com
"external nofollow" href="mailto:{@link">{@link guide/expression expression}
"external nofollow" href="http://blog.csdn.net/aitangyong/article/details/48972643">http://blog.csdn.net/aitangyong/article/details/48972643
"color: #ff0000">一、使用方法
html
<div ng-controller="ctrl"> <h2>$watch</h2> <div> <input type="text" ng-model="value1"/> </div> <div ng-bind="w1"></div> <h2>$watchGroup</h2> <div> <input type="text" ng-model="value2"/> <input type="text" ng-model="value3"/> </div> <div ng-bind="w2"></div> <h2>$watchCollection</h2> <ul> <li ng-repeat="v in arr" ng-bind="v"></li> </ul> <div ng-bind="w3"></div> </div>
js
angular.module('nickApp', []) .controller("ctrl", ["$scope", "$timeout", function ($scope, $timeout) { // $watch var watcher = $scope.$watch("value1", function (newVal, oldVal) { $scope.w1 = "$watch--" + "new:" + newVal + ";" + "old:" + oldVal; if (newVal == 'clear') {//设置一个注销监听的条件 watcher(); //注销监听 } }); // $watchGroup $scope.$watchGroup(["value2", "value3"], function (newVal, oldVal) { //注意:newVal与oldVal都返回的是一个数组 $scope.w2 = "$watchGroup--" + "new:" + newVal + ";" + "old:" + oldVal; }); // $watchCollection $scope.arr = ['nick', 'ljy', 'ljj', 'zhw']; $scope.$watchCollection('arr', function (newVal, oldVal) { $scope.w3 = "$watchCollection--" + "new:" + newVal + ";" + "old:" + oldVal; }); $timeout(function () { $scope.arr = ['my', 'name', 'is', 'nick']; }, 2000); }])
二、小案例
html
<h2>小案例</h2> <ul> <li ng-repeat="item in items.goodsArr"> <p ng-bind="item.goods"></p> <p> <span>单价:</span> <span ng-bind="item.price"></span> </p> <div> <input type="number" ng-model="item.num"> <span>个</span> </div> </li> </ul> <div> <span>总计:</span> <span ng-bind="items.sum"></span> <span>元</span> </div>
js
// 小案例 .factory('watchService', [function () { var items = { goodsArr: [{ goods: 'goods1', price: 10, num: '' }, { goods: 'goods2', price: 20, num: '' }], sum: 0 }; return { getItemsSave: function () { return items; } }; }]) .controller('bodyCtl', ['$scope', 'watchService', function ($scope, watchService) { $scope.items = watchService.getItemsSave(); // 这里要监听数量变化计算综合 //一 只监听所有num变化计算总额 var watchArr = []; $scope.items.goodsArr.forEach(function (v, i) { watchArr.push("items.goodsArr[" + i + "]['num']"); }); $scope.$watchGroup(watchArr, function (newVal, oldVal) { //注意:newVal与oldVal都返回的是一个数组 $scope.items.sum = 0; $scope.items.goodsArr.forEach(function (v, i) { $scope.items.sum += v.price * (v.num > 0 "htmlcode"><!DOCTYPE html> <html ng-app="nickApp"> <head> <meta charset="UTF-8"> <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"> <title>angular之$watch、$watchGroup、$watchCollection</title> <script src="/UploadFiles/2021-04-02/angular.min.js">以上所述是小编给大家介绍的Angular中的$watch、$watchGroup、$watchCollection,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无Angular中的$watch、$watchGroup、$watchCollection的评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。