从数组中角度删除对象不会更新视图

时间:2016-10-21 21:26:23

标签: angularjs arrays

使用1.5.8其他问题尚未提供解决方案

我显示用户可以通过单击图像删除的对象数组中的图像。我希望在删除它之后,数组中的元素是一个空对象,因此视图中有一个空单元格。

<div class="insert-items row m-t-2">
    <div class="col-xs text-xs-center slot-item-wrapper" ng-repeat="item in create.availableSlots track by $index">
        <div class="slot-item" ng-click="create.removeItemFromSlot(item.id)">
            <img ng-src="{{item.img}}" alt="" />
        </div>
    </div>
</div>

和JS

function removeItemFromSlot(id){
    _.each(create.availableSlots, function(item, i){
        if(id === item.id){
            create.availableSlots[i] = {};
        }
    });
}

这可以实现它的目的...但是item.img仍然显示旧的img,但对象中没有任何内容......

我有一种感觉,因为我使用$ index跟踪并且角度无法在没有它的情况下更新视图?我尝试过使用$ scope.apply(),但它告诉我日志中已经存在摘要周期错误。有没有办法在这里使用track更新视图?

0 个答案:

没有答案