您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)AngularJS如何監(jiān)聽ng-repeat渲染完成的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
監(jiān)聽ng-repeat渲染完成有兩種方法
一、最實用的方法:
<ul class="pprt_content"> <li ng-repeat="src in imageHotList track by $index" ng-click='goGoodsDet(src.goodsId,src.merchId)' on-finish-render-filters="completeRepeat"> <img ng-src="{{productUrl}}{{src.imageName}}"> </li> </ul>
對應(yīng)作用域controller:
$scope.completeRepeate= function(){ alert('1') }
自定義指令directive:
var app = angular.moduler('myApp',[]); app.directive('onFinishRenderFilters', ['$timeout', function ($timeout) { return { restrict: 'A', link: function(scope,element,attr) { if (scope.$last === true) { var finishFunc=scope.$parent[attr.onFinishRenderFilters]; if(finishFunc) { finishFunc(); } } } }; }])
二、使用廣播事件
/* * Controller文件中的代碼 * Setup general page controller */ MetronicApp.controller('simpleManageController', ['$rootScope', '$scope', 'settings','$http', function($rootScope, $scope, settings,$http) { $scope.$on('ngRepeatFinished', function (ngRepeatFinishedEvent) { //下面是在table render完成后執(zhí)行的js FormEditable.init(); Metronic.stopPageLoading(); $(".simpleTab").show(); }); }); MetronicApp.directive('onFinishRenderFilters', function ($timeout) { return { restrict: 'A', link: function(scope,element,attr) { if (scope.$last === true) { $timeout(function() { scope.$emit('ngRepeatFinished'); }); } } }; });
HTML
<!--HTML頁面的代碼,添加標(biāo)簽onFinishRenderFilters(格式有變):on-finish-render-filters--> <tr class="simpleTab" ng-repeat="simpleProduct in simpleProducts" on-finish-render-filters> <td> {{simpleProduct.productNo}} </td> </tr>
感謝各位的閱讀!關(guān)于“AngularJS如何監(jiān)聽ng-repeat渲染完成”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。