如何在模型值更改时再次触发重复完成事件

时间:2017-04-25 05:12:11

标签: html angularjs datatable

我使用ng-repeat finish事件在ng-repeat完成后触发一个函数。 以下是ng-repeat代码

<tr ng-if="allAccounts.length > 0" ng-repeat="account in allAccounts" on-finish-render="ngRepeatFinished">

自定义指令是:

app.directive('onFinishRender', function ($timeout) {
    return {
        restrict: 'A',
        link: function (scope, element, attr) {
            scope.$watch(scope.allAccounts, function() {
                if (scope.$last === true) {
                    $timeout(function () {
                        scope.$emit(attr.onFinishRender);
                    });
                }
           });
        }
    }
});

我在控制器中调用了我的函数:

$scope.$on('ngRepeatFinished', function(ngRepeatFinishedEvent) {
      callDataTable('accountListTable');
});

当我第一次使用ng-repeat触发器时它正常工作但是当我改变模型的值,即'allAccounts'时,它不会再次调用完成事件&amp; tr没有反映出来。

如果有人知道请给我一个有效的解决方案。 非常感谢!

0 个答案:

没有答案