私は角度1.3.15を使用しています。私は、最初の変数($scope.twotap_builtin_cart.sites[sikey].shipping
)に$scope.shipping_address
のデータが割り当てられているように、データをバインドする必要があります。たとえ後で$scope.twotap_builtin_cart.sites[sikey].shipping
という名前の変数が変更されたとしても、他の$scope.shipping_address
には影響しません。私はあなたと思う程度1時間結合または1つの方法$scope.twotap_builtin_cart.sites[sikey].shipping
が$scope.shipping_address
角片方向バインディング
答えて
結合を話していますバインドを探しているのではなく、変数の値を別の変数に割り当てるだけです。 JSONオブジェクト(そして$scope
がそのようなオブジェクトの1つ)の場合、a = b
をb
の内容をa
にコピーするのではなく、a
とb
の両方を同じオブジェクトに参照しています。あなたのケースでは
b = JSON.parse(JSON.stringify(a)) ;
:最良の方法のように割り当てを実行することで、あなたがこれを行う
$scope.twotap_builtin_cart.sites[sikey].shipping = JSON.parse(JSON.stringify($scope.shipping_address)) ;
一つ、両方の変数が同じ情報を保持するが、彼らは他に影響を与えずに変更することができます。
にそのつもりはないバインドを変更する場合でも、あなたは深い
$scope.shipping_address = angular.copy($scope.twotap_builtin_cart.sites[sikey].shipping)
を対処するためのこの方法をangular.copy()
を使用する必要があります
json.parseは構文解析を行い、json.stringifyはJavaScript値をJSON文字列に変換します。値を代入するときの実際の動作 – Rajib
JSON.parseはJSON互換の文字列を受け取り、JSONオブジェクトを返します。 JSON.strigifyはJSONオブジェクトを受け取り、文字列を返します。したがって、これを使用して、私の例では 'b 'に割り当てるオブジェクトのコピーを作成し、ソース変数とターゲット変数をリンクせずに割り当てを行います。 – FDavidov
ちなみに、私はこのアプローチが他のライブラリ(Angularのような)から独立しているので、この方法をお勧めします。 – FDavidov
同様の要件がこの質問に頼まれた: Edit with bootstrap modal and angulajs
同様に、あなたはどの長引くバインディングせずにデータを複製するAngularJS copy機能を使用することができます。ここで
$scope.twotap_builtin_cart.sites[sikey].shipping = angular.copy($scope.shipping_address);
我々は、他の変数に$scope.shipping_address
から値をコピーしています。今度は$scope.twotap_builtin_cart.sites[sikey].shipping
に変更しても、これは$scope.shipping_address
に反映されません - これはあなたが望むものです。
- 1. 片方向のバインディングを更新した角1.5のディレクティブ親のスコープ
- 2. 角度ファクトリーでの双方向バインディング
- 3. 角2動的双方向バインディング
- 4. 角2コンポーネント間の一方向のバインディング
- 5. 片方向ピボットページング
- 6. 片方向のSOCK_STREAM
- 7. 角度jsで片方向バインディングを使用してテーブル行をクローンする方法
- 8. 一方向バインディング
- 9. 角度のある片方向のデータが機能しない、
- 10. MATLAB:片方向エッジ検出
- 11. DataGridCheckboxColumn双方向バインディング
- 12. wpfコントロールのバックグラウンド双方向バインディングは片方向でしか動作しません
- 13. 角型コンポーネント:一方向バインディングと属性バインディングの違いは何ですか?
- 14. 角型双方向バインディングが機能しない
- 15. 角度1.5コンポーネント双方向バインディングが機能しない
- 16. 角カスタムディレクティブ双方向バインディングがuibモーダル内で動作しない
- 17. 角度2 ng要素の再レンダリングと双方向データのバインディング
- 18. ディレクティブテンプレート内で角2方向バインディングが機能しない
- 19. 双方向バインディングAngularjsのバグ
- 20. Angular2コンポーネント@Input双方向バインディング
- 21. リアクションUIと双方向バインディング
- 22. DataGridViewの双方向バインディング
- 23. WPF Programaticllyバインディング双方向
- 24. WPF ICollectionView双方向バインディング?
- 25. Angular2カスタムディレクティブ双方向バインディング
- 26. $ routeParamsとの双方向バインディング?
- 27. JSONとの双方向バインディング?
- 28. anglejの片方向結合と2方向結合の違い
- 29. angularJsの片方向と双方向のデータバインディング
- 30. 双方向ANOVAの片方向ANOVAデータをR
ディープ・コーピングとは – Rajib