Angular を使用してショッピング カート機能を実装する方法を学んでいたときに、次の問題に遭遇しました。アイテムを削除しても合計金額が変化しません。数日間苦労しましたが、計算できませんでした。助けてください
光阴似箭催人老,日月如移越少年。
機能を追加する
そして del 関数は
現在のコードは Angular で書いているようにはまったく見えず、まだ jQuery レベルにあると不満を言わざるを得ません。 DOM 操作を減らすのが Angularjs の本来の目的ですが、.text() メソッドを直接使用して値を割り当てます。 total を $scope にバインドし、HTML 上で {{total}} だけをバインドしてみてはいかがでしょうか。 さらに、グローバル変数を汚染するために配列 model2 を直接外側に配置することはお勧めできません。初期化の初期化コードをコントローラーに含めることもできます。HTML で初期化する必要はありません。
配列内の要素を削除しても、合計価格が変化する理由はありません。さらに、合計価格変数がスコープにバインドされている場合でも、それはプリミティブ データでもあります。各操作の後、合計価格を取得するには、再度計算する必要があります。
コードの一部を挿入します。最適化できる点はたくさんありますが、実行しなければならないため、変更する時間がありません。 使用する場合は、js、cssファイルのインポートパスに注意してください
jQuery を直接使用して VIEW レイヤーまたは MODEL レイヤーのデータを変更する場合は、データを手動で同期する必要があります。 必要に応じて使用できます:
または
データを同期します。詳細については、AngularJS APIを参照してください
機能を追加する
リーリーそして del 関数は
に変更されます リーリー現在のコードは Angular で書いているようにはまったく見えず、まだ jQuery レベルにあると不満を言わざるを得ません。 DOM 操作を減らすのが Angularjs の本来の目的ですが、.text() メソッドを直接使用して値を割り当てます。 total を $scope にバインドし、HTML 上で {{total}} だけをバインドしてみてはいかがでしょうか。
さらに、グローバル変数を汚染するために配列 model2 を直接外側に配置することはお勧めできません。初期化の初期化コードをコントローラーに含めることもできます。HTML で初期化する必要はありません。
配列内の要素を削除しても、合計価格が変化する理由はありません。さらに、合計価格変数がスコープにバインドされている場合でも、それはプリミティブ データでもあります。各操作の後、合計価格を取得するには、再度計算する必要があります。
リーリーコードの一部を挿入します。最適化できる点はたくさんありますが、実行しなければならないため、変更する時間がありません。 使用する場合は、js、cssファイルのインポートパスに注意してください
jQuery を直接使用して VIEW レイヤーまたは MODEL レイヤーのデータを変更する場合は、データを手動で同期する必要があります。
リーリー必要に応じて使用できます:
または
リーリーデータを同期します。詳細については、AngularJS APIを参照してください