アプリケーション内のすべてのゾンビを追跡し、イベントバインディングがどのように発生するかをよりよく理解しようとしています。"add"
コレクションイベントをそのrender
関数にバインドするビューがあります。
_.bindAll(this, "render");
this.collection.bind("add", this.render);
したがって、レンダリング関数に何かを記録すると、ユーザーがUIを介して新しいモデルを追加した直後に、レンダリングが2回行われたことがコンソールで確認できます。コンソール出力は次のようになります。
rendering index.js?body=1 (line 88)
POST http://localhost:3000/tasks jquery.js?body=1 (line 8103)
rendering index.js?body=1 (line 88)
なぜこれが起こっているのだろうか。モデルがコレクションに1回だけ追加されたという事実を知っているので、イベントは1回だけ発生する必要があると思います。render
それでは、なぜ2回処刑されたのかわかりません。ここで同様の質問を調べましたが、add
の代わりにイベントを使用しているため、違いchange
ます。