<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

        Angular中的$watch方法詳解

        來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:29:42
        文檔

        Angular中的$watch方法詳解

        Angular中的$watch方法詳解:在$apply方法中提到過臟檢查,首先apply方法會(huì)觸發(fā)evel方法,當(dāng)evel方法解析成功后,會(huì)去觸發(fā)digest方法,digest方法會(huì)觸發(fā)watch方法。 (1)$watch簡(jiǎn)介 在digest執(zhí)行時(shí),如果watch觀察的的value與上一次執(zhí)行時(shí)不一樣時(shí),就會(huì)被觸發(fā)。 AngularJS內(nèi)部
        推薦度:
        導(dǎo)讀Angular中的$watch方法詳解:在$apply方法中提到過臟檢查,首先apply方法會(huì)觸發(fā)evel方法,當(dāng)evel方法解析成功后,會(huì)去觸發(fā)digest方法,digest方法會(huì)觸發(fā)watch方法。 (1)$watch簡(jiǎn)介 在digest執(zhí)行時(shí),如果watch觀察的的value與上一次執(zhí)行時(shí)不一樣時(shí),就會(huì)被觸發(fā)。 AngularJS內(nèi)部

        在$apply方法中提到過臟檢查,首先apply方法會(huì)觸發(fā)evel方法,當(dāng)evel方法解析成功后,會(huì)去觸發(fā)digest方法,digest方法會(huì)觸發(fā)watch方法。

        (1)$watch簡(jiǎn)介

        在digest執(zhí)行時(shí),如果watch觀察的的value與上一次執(zhí)行時(shí)不一樣時(shí),就會(huì)被觸發(fā)。

        AngularJS內(nèi)部的watch實(shí)現(xiàn)了頁(yè)面隨model的及時(shí)更新。

        $watch方法在用的時(shí)候主要是手動(dòng)的監(jiān)聽一個(gè)對(duì)象,但對(duì)象發(fā)生變化時(shí)觸發(fā)某個(gè)事件。

        (2)watch方法用法

        $watch(watchFn,watchAction,deepWatch)

        watchFn:angular表達(dá)式或函數(shù)的字符串

        watchAction(newValue,oldValue,scope):watchFn發(fā)生變化會(huì)被調(diào)用

        deepWatch:可選的布爾值命令檢查被監(jiān)控的對(duì)象的每個(gè)屬性是否發(fā)生變化

        $watch會(huì)返回一個(gè)函數(shù),想要注銷這個(gè)watch可以使用函數(shù)

        (3)例子

        在前面的例子中,當(dāng)name的表單改變30次,然后觸發(fā)某個(gè)事件。

        控制器代碼如下:

        var firstController = function ($scope){
         $scope.name='張三';
         $scope.count=0;
         // 監(jiān)聽一個(gè)model 當(dāng)一個(gè)model每次改變時(shí) 都會(huì)觸發(fā)第2個(gè)函數(shù)
         $scope.$watch('name',function(newValue,oldValue){
         ++$scope.count;
         if($scope.count > 30){
         $scope.name = '已經(jīng)大于30次了';
         }
         });
        }

        html代碼如下:

        <!DOCTYPE html>
        <html>
        <head>
         <meta charset="utf-8">
        </head>
        <body>
         <div ng-app="">
         <div ng-controller="firstController">
         <input type="text" value="" ng-model="name"/>
         改變次數(shù):{{count}}-{{name}}
         </div>
         </div>
         <script type="text/javascript" src="app/index.js"></script>
        <script type="text/javascript" src="../../vendor/angular/angularjs.js"></script>
        </body>
        </html>

        運(yùn)行效果如下:

        前30次可以隨意修改:

        當(dāng)修改了30次后,name固定為'已經(jīng)大于30次了':

        這就是watch的作用,model每一次改變時(shí)都會(huì)觸發(fā)第二個(gè)函數(shù)。

        (4)watch的第三個(gè)參數(shù)

        當(dāng)監(jiān)聽的為一個(gè)對(duì)象或者數(shù)組時(shí),例如:

         $scope.data = {
         name :'李四',
         count:20
         }

        此時(shí)data里的name和count都要監(jiān)聽,那么可以這么寫:

         $scope.$watch('data',function(){
         },true)

        如果不加第三個(gè)參數(shù),那么只會(huì)監(jiān)聽data,只有當(dāng)data引用改變時(shí)才會(huì)觸發(fā)。

        因此當(dāng)需要監(jiān)聽一些引用對(duì)象需要把第三個(gè)參數(shù)設(shè)置成true。

        總結(jié)

        以上所述是小編給大家介紹的Angular中的$watch方法詳解,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

        聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        Angular中的$watch方法詳解

        Angular中的$watch方法詳解:在$apply方法中提到過臟檢查,首先apply方法會(huì)觸發(fā)evel方法,當(dāng)evel方法解析成功后,會(huì)去觸發(fā)digest方法,digest方法會(huì)觸發(fā)watch方法。 (1)$watch簡(jiǎn)介 在digest執(zhí)行時(shí),如果watch觀察的的value與上一次執(zhí)行時(shí)不一樣時(shí),就會(huì)被觸發(fā)。 AngularJS內(nèi)部
        推薦度:
        標(biāo)簽: 中的 watch 方法解析
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲精品乱码久久久久久久久久久久| 午夜男人一级毛片免费| 国产亚洲老熟女视频| 无人视频在线观看免费播放影院| 国产又长又粗又爽免费视频| AV激情亚洲男人的天堂国语| 国产成人免费高清在线观看| 亚洲av日韩综合一区久热| 在线观看免费亚洲| 免费精品国产自产拍在线观看| 亚洲国产综合久久天堂| 精品国产免费人成网站| 久久亚洲伊人中字综合精品| 久9热免费精品视频在线观看| 亚洲神级电影国语版| 国产男女爽爽爽爽爽免费视频| 亚洲一区二区久久| 日韩成全视频观看免费观看高清| 国产亚洲精品成人久久网站| 成人亚洲性情网站WWW在线观看 | 亚洲国产天堂在线观看| 91精品视频免费| 亚洲精品美女久久7777777| 亚洲国产午夜福利在线播放| 你是我的城池营垒免费观看完整版| 亚洲AV第一页国产精品| 毛片在线看免费版| rh男男车车的车车免费网站| 亚洲国产精品自在在线观看| 成人毛片18女人毛片免费视频未| 国产精品亚洲专区无码唯爱网| 国产亚洲3p无码一区二区| 和日本免费不卡在线v| 在线观看亚洲网站| 亚洲韩国—中文字幕| 在线播放免费人成视频在线观看| 久香草视频在线观看免费| 亚洲人成亚洲精品| 日韩精品电影一区亚洲| 8888四色奇米在线观看免费看| 亚洲AV无码专区亚洲AV桃|