最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

監(jiān)聽angularJs列表數(shù)據(jù)是否渲染完畢的方法示例

 更新時(shí)間:2018年11月07日 10:17:53   作者:前端攻城小牛  
前端在做數(shù)據(jù)渲染的時(shí)候經(jīng)常會(huì)遇到在數(shù)據(jù)渲染完畢后執(zhí)行某些操作,這篇文章主要介紹了監(jiān)聽angularJs列表數(shù)據(jù)是否渲染完畢的方法示例,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

前端在做數(shù)據(jù)渲染的時(shí)候經(jīng)常會(huì)遇到在數(shù)據(jù)渲染完畢后執(zhí)行某些操作,這幾天就一直遇到在列表和表格渲染完畢后,執(zhí)行點(diǎn)擊和選擇操作。對(duì)于angularjs處理這類問題,最好的方式就是指令 directive。

首先,定義指令:

app.directive('onfinishrenderfilters', function ($timeout) {
  return {
    restrict: 'A',
    link: function (scope, element, attr) {
      if (scope.$last === true) {  //判斷是否是最后一條數(shù)據(jù)
        $timeout(function () {
          scope.$emit('ngRepeatFinished'); //向父級(jí)scope傳送ngRepeatFinished命令
        });
      }
    }
  };
});

其次,指令定義完畢后,需要將指令添加到迭代的標(biāo)簽內(nèi),此處是<tr>標(biāo)簽

<div class="fixed-table-container" style="margin-right: 0px;">
  <table class="table table-hover lamp-table">
    <thead>
    <tr>
      <th></th>
      <th style="text-align: center; " data-field="name_device-id" tabindex="0"
        ng-repeat="i in provider.geoZoneListHead track by $index" ng-hide=i.bol>
        <div class="th-inner sortable " style="padding-right: 10px">{{i.name}}
        </div>
        <div class="fht-cell" style="width: 101px;"></div>
      </th>

    </tr>
    </thead>
    <tbody>
    <tr ng-repeat="i in provider.geoZoneList" onfinishrenderfilters>
      <td><input data-index="0" name="btSelectItem" type="radio"
            value="{{$index}}" ng-click="selectInput($index)"></td>
      <td class="nameId0">{{$index+1}}</td>
      <td class="nameId1">{{i.geoZoneName}}</td>
      <td class="nameId2">{{i.description}}</td>
      <td class="nameId3">{{i.totalNumberOfMembers}}</td>
      <td class="nameId4">{{i.country}}</td>
      <td class="nameId5">{{i.lastUpdateDate}}</td>
    </tr>
    </tbody>
  </table>
</div>

最后,在最后一條數(shù)據(jù)渲染完畢后,brodercast是向子級(jí)scope傳送事件(命令)。而on()是監(jiān)聽事件,監(jiān)聽brodercast是否將事件(命令)傳送回來,若事件已傳送回來,則表示數(shù)據(jù)已經(jīng)渲染完畢,就可以執(zhí)行以后的其他操作了

$scope.$on('ngRepeatFinished', function (ngRepeatFinishedEvent) {
  var btnList = $("input[name='btSelectItem']");
  btnList.eq(0).attr("checked","checked");
  $scope.provider.detalOutlet();
});

在沒有angularJs的時(shí)候一般通過監(jiān)聽onLoad事件來確定頁(yè)面是否加載完成。但在使用angularJs來渲染頁(yè)面時(shí),onLoad事件不能保證angularJs是否完成了對(duì)頁(yè)面的渲染。最常見的情況就是用angularJs來加載某個(gè)數(shù)據(jù)Table時(shí),我們得等這個(gè)Table加載完之后對(duì)Table上的數(shù)據(jù)進(jìn)行操作,但因?yàn)檫@個(gè)Table是由AngularJs渲染的,所以得找到某個(gè)方法獲得AngularJs渲染完畢后的事件。 這也就是為什么onload事件在angularJs框架上數(shù)據(jù)刷新不執(zhí)行的一個(gè)原因,因?yàn)閍ngularJs是數(shù)據(jù)驅(qū)動(dòng),根據(jù)數(shù)據(jù)的更新進(jìn)行頁(yè)面的刷新,而整體頁(yè)面已經(jīng)加載完成(數(shù)據(jù)更新,angularJs數(shù)據(jù)渲染,頁(yè)面不會(huì)重新加載),故onload事件判定頁(yè)面沒有變化,所以不予執(zhí)行!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Angular的MVC和作用域

    Angular的MVC和作用域

    本文主要Angular的MVC和作用域進(jìn)行詳細(xì)分析介紹,具有一定的參考價(jià)值,下面跟著小編一起來看下吧
    2016-12-12
  • Angular2使用vscode斷點(diǎn)調(diào)試ts文件的方法

    Angular2使用vscode斷點(diǎn)調(diào)試ts文件的方法

    本篇文章主要介紹了Angular2使用vscode斷點(diǎn)調(diào)試ts文件的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-12
  • Angularjs 依賴壓縮及自定義過濾器寫法

    Angularjs 依賴壓縮及自定義過濾器寫法

    這篇文章主要介紹了Angularjs 依賴壓縮及自定義過濾器寫法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-02-02
  • angularjs select 賦值 ng-options配置方法

    angularjs select 賦值 ng-options配置方法

    下面小編就為大家分享一篇angularjs select 賦值 ng-options配置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • AngularJS HTML DOM詳解及示例代碼

    AngularJS HTML DOM詳解及示例代碼

    本文主要介紹AngularJS HTML DOM基礎(chǔ)知識(shí),這里整理了相關(guān)資料和示例代碼進(jìn)行詳解,有需要的小伙伴可以參考下
    2016-08-08
  • AngularJS基礎(chǔ) ng-cloak 指令簡(jiǎn)單示例

    AngularJS基礎(chǔ) ng-cloak 指令簡(jiǎn)單示例

    本文主要介紹AngularJS ng-cloak 指令,這里幫大家整理了ng-clock指令的基礎(chǔ)資料,和簡(jiǎn)單的代碼實(shí)例及效果圖,學(xué)習(xí)AngularJS指令的朋友可以參考下
    2016-08-08
  • angular中ui calendar的一些使用心得(推薦)

    angular中ui calendar的一些使用心得(推薦)

    下面小編就為大家?guī)硪黄猘ngular中ui calendar的一些使用心得(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • 探討AngularJs中ui.route的簡(jiǎn)單應(yīng)用

    探討AngularJs中ui.route的簡(jiǎn)單應(yīng)用

    這篇文章主要介紹了AngularJs中ui.route的簡(jiǎn)單應(yīng)用,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-11-11
  • 詳解Angular之路由基礎(chǔ)

    詳解Angular之路由基礎(chǔ)

    單頁(yè)應(yīng)用中,組件時(shí)構(gòu)建應(yīng)用的基礎(chǔ)元素,頁(yè)面展示什么內(nèi)容均是靠頁(yè)面有什么組件決定的,而展示什么組件又是由一組路由(帶有Url元素的特定集合,可用于導(dǎo)航視圖)決定的,希望本文可以幫助讀者了解路由的基礎(chǔ)概念和基礎(chǔ)使用、寫法。
    2021-05-05
  • AngularJs Injecting Services Into Controllers詳解

    AngularJs Injecting Services Into Controllers詳解

    本文主要介紹AngularJs Injecting Services Into Controllers的知識(shí),這里整理了一下相關(guān)資料,及示例代碼,幫助大家學(xué)習(xí)和理解,有興趣的小伙伴可以參考下
    2016-09-09

最新評(píng)論

新和县| 汪清县| 中西区| 永平县| 桓台县| 黑水县| 资中县| 鄢陵县| 将乐县| 宜阳县| 呼伦贝尔市| 米脂县| 竹北市| 宜兰市| 孝感市| 五大连池市| 江都市| 融水| 松潘县| 乐安县| 肇源县| 山丹县| 万载县| 布尔津县| 海晏县| 巫溪县| 柘城县| 尉犁县| 宿松县| 太白县| 成都市| 麦盖提县| 龙游县| 涟源市| 娱乐| 海南省| 拉孜县| 兴安盟| 明溪县| 丰顺县| 威信县|