从一个范围中删除数据,它反映在另一个范围

时间:2015-12-22 03:03:33

标签: javascript angularjs

我制作了两个范围:$scope.product_remaining$scope.all_products

$scope.product_remaining = {};
$scope.all_products = {};

httpService.get(products_url, "")
  .then(function(result) {
      if (result.status == 200) {

        $scope.all_product = result.data;
        $scope.product_remaining = result.data;
      }
    }

当我从$scope.product_remaining移除任何密钥时,它也会反映在$scope.all_product中。

这可能发生吗?我做错了吗?

1 个答案:

答案 0 :(得分:2)

那是因为你正在这样做,

$scope.all_product = result.data;
$scope.product_remaining = result.data;

<强> function ,<强> array ,<强> object ,<强> date 将在协助期间继续参考。

试试这个

$scope.all_product = angular.copy(result.data);
$scope.product_remaining = angular.copy(result.data);