如何从angularjs中的json对象中删除元素

时间:2015-04-28 13:10:00

标签: angularjs array-splice

我正在使用angularjs来整合我的apis。

我每行都有一个网格表和DELETE按钮。

我的控制器有以下代码:

$scope.singleAppDetails = {};

$scope.removeRow = function(detail, index){             

       var delRes =  $http.delete($scope.appUrl + detail.id, detail);
        delRes.success(function (data, status, headers, configs) {
            console.log(data);
        });
        delRes.error(function (data, status, headers, configs) {
            console.log(data);
        });
        $scope.singleAppDetails.splice(index, 1);
    };

和$ scope.singleAppDetails包含:

Object {id: "553e20fce4b0f4eb7d13fd13", name: "Amazon", appId: "3ebc86ea-62a7-419f-9f60-dc88b66efa6e", secret: "n9prQ8YSdcxuBAcQ1PX4DUeOUBZoAKqBHnCONrueGoUTE8pqFZ", domain: "e-commerce"}

但我得到“TypeError:$ scope.singleAppDetails.splice不是函数” 控制台出错。

2 个答案:

答案 0 :(得分:0)

您收到该错误,因为splice是仅用于数组的方法,$ scope.singleAppDetails是代码中的对象。

答案 1 :(得分:0)

splice()是一个数组函数。请参阅documents

将singleAppDetails定义为对象:

$scope.singleAppDetails = {};

答案:删除ID:

delete $scope.singleAppDetails.id;

请参阅JSBin上的此示例。