【发布时间】:2015-10-31 21:33:28
【问题描述】:
如果图像不存在,我需要删除项目并在 ng-repeat 中推送下一个。
目前我使用下一个指令
myApp.directive("noImage", function() {
return {
link: function(scope, element, attrs) {
return element.bind("error", function() {
element.attr("src", attrs.noImage);
return element.addClass('no-img');
//return element.parent().remove();
//return element.parent().splice();
});
}
};
});
显然,如果使用element.parent().remove() 或splice(),它不会将下一项推送到数组中。
这里是fiddle
另一个想法是在控制器中编写函数,然后从指令中运行它:
$scope.splicePost = (post) =>
$scope.posts.splice( $scope.posts.indexOf(post), 1 )
我无法做到这一点的问题。也许需要使用隔离范围?
【问题讨论】:
标签: javascript angularjs