Javascript 如何使用特定超时从ng repeat中删除每个元素

Javascript 如何使用特定超时从ng repeat中删除每个元素,javascript,angularjs,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Ng Repeat,如何从ng repeat数组中删除值,并在添加值时超时 $timeout(function() { $scope.datas.splice($scope.datas[$scope.datas.length - 1]) // just something }, 4000); 我需要的是。 如果向该数组中添加元素,则在指定的超时之后,只需删除该元素。不是最后添加的元素。因此每个元素都有自己的超时 这里有一个帮手 我不知道如何做到这一点。需要一点帮助 谢谢。您可以在addValue函数中使

如何从ng repeat数组中删除值,并在添加值时超时

$timeout(function() {
     $scope.datas.splice($scope.datas[$scope.datas.length - 1]) // just something
}, 4000);
我需要的是。
如果向该数组中添加元素,则在指定的超时之后,只需删除该元素。不是最后添加的元素。因此每个元素都有自己的超时

这里有一个帮手

我不知道如何做到这一点。需要一点帮助


谢谢。

您可以在addValue函数中使用超时。在此超时时间内,您将获得添加元素的索引,并按如下方式删除它:

$scope.addValue = function() {
    var element = $scope.datas[$scope.datas.length - 1] + 1;
    $scope.datas.push(element);
    $timeout(function(){
        var index = $scope.datas.indexOf(element);
        $scope.datas.splice(index, 1)
    }, 2000);
};

你是什么意思?您正在使用push()添加元素,这将添加到最后一个元素。如果超时时间为4秒,则要删除哪个元素。4秒前添加的项目应在@deveshsat处删除。您要求的方式需要为每个添加的项目添加一个时间戳,然后根据时差,您需要删除元素。如果使用“推送”添加,则使用“弹出”删除;如果使用“取消移动”,则使用“移动”删除。如果替换数组中的元素,则存储索引以拼接该元素。或多或少。这是相似的。是的,玛尼什。与Notifications中的计时器类似,因此为添加到数组中的每个元素设置了一个超时。是的,在添加新元素后,将启动一个超时,并在超时结束时删除不总是工作的元素。尝试同时添加10个或更多元素。只有少数元素在单独的函数中得到removedput timeout并通过element@Rishi. 这没什么区别。元素添加到超时后不会更改,因为它是在超时内本地声明的。我想也是这样