2012-10-22 67 views

回答

14

似乎也許你想複製的對象,所以你不編輯相同的參考?只需使用angular.copy即可。 Docs here.

$scope.items = [{value: 1},{value: 2},{value: 3}]; 
$scope.itemEdit1 = angular.copy($scope.items); 
$scope.itemEdit2 = angular.copy($scope.items); 

http://jsfiddle.net/blesh/htTQc/1/

+0

不知道angularjs分配上產生淺拷貝。這是一個功能還是因爲角度處理封閉物體的方式? – rcell

+0

這與Angular沒有多大關係;這是因爲'$ scope.items','$ scope.itemEdit1'和'$ scope.itemEdit2'對同一個數組都是相同的引用。你創建一個數組,然後你創建兩個引用相同事物的變量。 '$ scope.itemEdit1 === $ scope.itemEdit2'將在您的OP代碼中返回'true'。 –

相關問題