angular指令监听ng-repeat渲染完成后执行自定义事件方法
生活随笔
收集整理的這篇文章主要介紹了
angular指令监听ng-repeat渲染完成后执行自定义事件方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
今天工作中遇到需要用到ng-repeat遍歷渲染完后執行某個操作,angular本身并沒有提供監聽ng-repeat渲染完成的指令,所以需要自己創建自定義指令。
在ng-repeat模板實例內部會暴露出一些特殊屬性$index/$first/$middle/$last/$odd/$even,$index會隨著每次遍歷(從0開始)遞增,當遍歷到最后一個時,$last的值為true,所以可以通過判斷$last的值來監聽ng-repeat的執行狀態,
怎么在遍歷過程中拿到$last的值:自定義指令
var app = angular.module('app',[]);app.directive('repeatFinish',function(){return {link: function(scope,element,attr){console.log(scope.$index)if(scope.$last == true){scope.$eval( attr.repeatFinish );}}} })app.controller('appCtrl',function($scope,$element){$scope.arr = [1,2,3,4,5,6];$scope.tip = '';//定義repeat完成后要執行的方法,方法名可自行定義$scope.repeatDone = function(){$scope.tip = 'ng-repeat完成,我要開始搞事情了!!!';//執行自己要執行的事件方法} });調用時使用angular調用指令的方法就可以了。
<div ng-repeat="i in arr" repeat-finish="repeatDone();"><p ng-bind="i"></p> </div>?
轉載于:https://my.oschina.net/u/2391658/blog/1931036
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的angular指令监听ng-repeat渲染完成后执行自定义事件方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 馊水油是什么意思 馊水油是怎么来的
- 下一篇: 小白都能玩的算法day2-数量级、输入和