角度JSのオブジェクトプロパティの変更に関する問題に直面しています。同じデータを使用する複数変数の変数のデータ変更を制限する方法
たとえば、私はオブジェクトの配列を持っています。
$scope.ex1 = [{"name":"Ethel Price","gender":"female","company":"Enersol"},
{"name":"Claudine Neal","gender":"female","company":"Sealoud"},
{"name":"Beryl Rice","gender":"female","company":"Velity"},
{"name":"Wilder Gonzales","gender":"male","company":"Geekko"},
{"name":"Georgina Schultz","gender":"female","company":"Suretech"},
{"name":"Carroll Buchanan","gender":"male","company":"Ecosys"},
{"name":"Valarie Atkinson","gender":"female","company":"Hopeli"},
{"name":"Schroeder Mathews","gender":"male","company":"Polarium"},
{"name":"Lynda Mendoza","gender":"female","company":"Dogspa"},
{"name":"Sarah Massey","gender":"female","company":"Bisba"}]
私はそれが角-データテーブルを使用しています表示するには、リスト形式でデータを表示するフォームを持っています。
ユーザがリストアイテムをクリックすると、その特定のオブジェクトを配列に格納しています。例えばユーザの は、上記のリストから2つの項目が、私は変化が$scope.ex1
オブジェクトに自動的に反映さ$scope.selected
、いくつかのプロパティを変更するとき、他の変数に2つのオブジェクトが
$scope.selected = [{"name":"Lynda Mendoza","gender":"female","company":"Dogspa"},
{"name":"Sarah Massey","gender":"female","company":"Bisba"}];
以下のような問題があることを維持しています選択しました。 のようになります。
$scope.selected[0].name = "Rakesh rekala"
上記の変更は、その特定の項目に$scope.ex1
の配列に反映されます。
このシナリオをどのように制限するかは、これを解決する方法です。
JavaScriptのオブジェクトは不変にするどのような方法は、角度のために不変JSまたは任意の他の適切な選択を使用して同じように、そこにあります。 –