,所以我使用destroy()从我的$ scope.Array单击中删除项目。它可以正常工作,当我打开控制台时,以下显示:
$scope.array[index].destroy is not a function
因此,我删除了此代码,希望它可以解决控制台错误,但是在我的应用程序无法正常工作之后。我检查了这不是其他事物,而是这样,它正在起作用,但是错误仍在显示。我不知道可能是因为它是一个较旧的版本?
edit :ng-click上调用的整个功能:
$scope.SpliceItems = function (index)
{
$scope.array.splice(index, 1);
}
$scope.DestroyItem = function(index) {
$scope.array[index].destroy();
}
$scope.remove = function(item)
{
for (var i = 0; i < $scope.array.length; i++) {
if ($scope.array[i].Id == item.Id) {
$scope.SpliceItems(i);
$scope.DestroyItem(i);
}
}
编辑2
那么,这里有什么问题?从数组中添加或删除时,我需要动态乘以此功能:
$scope.getTotal= function() {
var total = 1;
for (var i = 0; i < $scope.array.length; i++) {
total *= $scope.array[i];
}
if (total == 1)
total = 0;
return total;
}
当我仅使用剪接时,它不会改变总数,它总是乘以乘。当我使用剪接 destory()时,它工作正常,但是浏览器控制台出于某种原因给我带来了错误。
使用splice()
代替destroy()
,例如: $scope.array.splice(index, 1);
如果要从数组中删除元素,请尝试此元素,
$scope.array = ['a', 'b'];
$scope.array.splice(index,1);