1

私はBackboneの完全な初心者です。これは、約8時間しか学習していないので、この質問が基本的なものであると思われる場合は申し訳ありません。ドキュメントはこれについてあまり明確ではありません。

問題のモデルはProduct、多くのAjax呼び出しを実行する必要があります。モデルのロジック内で、特定の条件に応じて、モデルの検証内で少なくとも2つのAjax呼び出しを実行する必要があります。

それだけでなく、特定のフィールドが変更された場合、各フィールドが最後の変更からバブルされた独自の変更フィールドをトリガーするため、Ajax呼び出しを実行する必要があります。

  • 価格が変わる
  • モデルは、サーバー呼び出しから製品の価格を再計算します
  • 同時に、価格変更からモデルのサプライヤ変数に変更がトリガーされます
  • サプライヤーの変更は、価格変更後にAjax呼び出しを行う必要があります。

だから私が知る必要があるのは:基本的に、すべてのAjax呼び出しをBackboneに変換するにはどうすればよいですか?ここでの最良の方法は何ですか?

4

1 に答える 1

0

私は私の発見と解決策でこれに答えるつもりです。

これで、すべてのAjax呼び出しとのバックボーン統合が完了しました。これを解決する方法は、jQueryのpromise APIを使用して、チェーンに使用できるモデル関数から遅延オブジェクトを返すことでした。次に、インターフェイスでこの関数を連鎖的に使用しました。

ここでよりよく説明するために、例を示します。-クラス内に2つの関数があると想像してくださいProduct。1つは呼び出されpopulateRecord、もう1つはset_price。それぞれが独自のAjax呼び出しと処理を行います。

ビュー内に、これら2つのモデル関数をいつどのように呼び出すかというロジックを処理するProductViewという関数を格納します。edit

this.model.populateRecord().then(function(data){ return $this.model.set_price(data) })

これの「ビジネス」の側面をビューに入れる方法はうまく機能し、多くの問題を解決します。

うまくいけば、これは他の人を助けるでしょう、

于 2013-04-17T08:29:26.550 に答える