問題タブ [backbone-events]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
288 参照

oop - バックボーン: サブスクライバー ビューを正しい順序でレンダリングおよび再レンダリングするためのパターン

したがって、基本的には、親の「コントローラー」ビューによって呼び出されたときにサブビューが再レンダリングされる pubsub のこのパターンをいじっています (混乱している場合は申し訳ありません)。サブビューがコレクションまたはモデルのフェッチに基づいている場合 (以下には表示されていません)、正しい順序でレンダリングされないことがありますSubView2 の下。

このような一般的な問題にはパターンが必要だと思います。これが意味をなさないかどうかを教えてください。明確にします。しかし、私が扱っている基本的な状況は以下のとおりです。

マークアップ:

js:

0 投票する
1 に答える
354 参照

javascript - Why is the click event triggered several times in my Backbone app?

I'm making a Backbone.js app and it includes an index view and several subviews based on id. All of the views have been bound with mousedown and mouseup events. But every time I go from a subview to the index view and then go to any of subviews again, the mousedown and mouseup events in the current subview will be triggered one more time, which means when I click the subview, there will be several consecutive mousedown events triggered followed by several consecutive mouseup events triggered.

After looking through my code, I finally found that it's the router that causes this problem. Part of my code is as follows:

As you can see, I create the index collection and view in the initialize method of the router, but I create the subview collection and view in the corresponding route function of the router. And I tried to put the index collection and view in the index function and the click event in index view will behave the same way as subviews. So I think that's why the mousedown and mouseup will be triggered several times.

But the problem is, I have to use the id as one of the parameters sent to subview. So I can't create subview in the initialize method. What's more, I've already seen someone else's projects based on Backbone and some of them also create sub collection and view in the corresponding route function, but their app runs perfectly. So I don't know what is the root of my problem. Could someone give me some idea on this?

0 投票する
1 に答える
886 参照

javascript - Backbone.js: コレクション内で使用されている間、モデル イベントが発生しない

ここでは Backbone.js Model - Contact と Collection - Contacts を Model として持っています。2 つのビューがあり、1 つはコレクションを使用してすべての連絡先を一覧表示し、もう 1 つはモデルを直接使用して 1 つの連絡先を表示します。しかし、モデルを直接使用している場合、コレクションで「変更」イベントを使用しているときに「変更」イベントを発生させることができます (モデルの「すべての」イベントでさえも) 発生しません。コレクションで機能させるために、ここで追加のバインドが不足していますか?

更新 コレクションと単一モデルの両方のインスタンスを使用している間、generateUrls() を実行して、モデルの「id」に基づいて urlDisplayPicBig と urlDisplayPicSmall を更新する必要があります。

0 投票する
1 に答える
235 参照

javascript - クリックイベントが発生しない

私はしばらくの間見回しましたが、これの原因が何であるかを示唆するものを見つけることができませんでした.

私のコード:

上記のコードは、 の最後の項目として含まれてい<body>ます。HTMLは以下の通りです。

すべての必要な要素が存在し (私が知る限り) el、View の属性を手動で設定していません。<h3>クリックしたときにイベントがバインド/起動されない理由がわかりません。

ルーターを使用せずにビューを自分で作成しても、エラーはスローされず、機能は機能します例えば

0 投票する
1 に答える
854 参照

javascript - バックボーンビューはモデルイベントをリッスンします

バックボーンビューとモデルの通信に問題があります。ビューはモデルからのイベントをリッスンする必要があるため、関数couponReaderはモデルからデータを取得し、一種の確認後にカートに追加することになっています。どんな助けでも大歓迎です

モデルクラス:ループでサーバーをリッスンし、データがロードされるたびにサーバーからデータを取得します。

0 投票する
1 に答える
713 参照

javascript - 破壊されたときにモデルを削除するのを防ぐにはどうすればよいですか?

モデルが破棄されたときに backbone.js コレクションがモデルを削除するのを防ぐ方法はありますか?

それが起こるたびに、コレクションから「削除」トリガーイベントを受け取ります

すでにいくつかの引数を渡そうとしましたが、何もしませんでした

model.destroy({silent: false, remove: false})

0 投票する
3 に答える
5055 参照

backbone.js - バックボーン コレクション イベント起動を 1 回追加

Backbone コレクションがあり、それに新しいモデルを追加すると、「追加」イベントが期待どおりに機能しないようです。コレクションの追加イベントをリッスンするように 2 つのビューをバインドしましたが、イベントの通知を受け取るのは 1 つだけのようです。これが発生すると、PUT 要求はサーバーに送信されません。2 番目のバインドを削除すると、もう 1 つのバインドが機能し、PUT 要求が送信されます。コード スニペットは次のとおりです。

0 投票する
1 に答える
8563 参照

backbone.js - Backbone.js モデルの destroy メソッドが成功イベントまたはエラー イベントをトリガーしない

私は Backbone.js を学び始めており、このボイラープレートから始めて、ディスク上の静的ファイルから JSON データをロードし、それを html テーブルに表示する例を作成しました。

次に、コレクションから、次にDOMから要素を削除することになっているボタンにイベントをバインドしようとしました。事は正常に動作し、クリックはdestroyメソッドをトリガーし、イベントはコレクションでトリガーされますが、またはのコールバックremoveからは何も出てきませんsuccesserrordestroy

誰にも手がかりがありますか?

モデル:

景色 :

0 投票する
1 に答える
101 参照

javascript - バックボーン: myView を DOM にレンダリングする方法

このコードが問題を理解するのに十分であることを願っています。
問題は次のとおりです。

1) myView を初めてロードします。2
) をクリックするdiv#myIdと、期待どおりに関数myActionが 1 回だけトリガーされます。
3)別のビューのメソッドremoveを呼び出すと、関数は 2 回トリガーされます。 4) 次に、ステップ 3) を繰り返すと、機能が 3 回トリガーされます。renderingmyAction
myAction

何が問題なのですか?

PS:
各 render 呼び出しに対して作成される DOM は問題ありません。

0 投票する
2 に答える
511 参照

javascript - コレクションのフェッチ時にレンダリング関数が呼び出されない

コレクションへのビュー バインドを定義しました。

1) ビューを初期化すると、コレクションのフェッチ呼び出しが実行されます。
2) get リクエストの結果を見ると
問題ありません。 3) render 関数を呼び出すために (myCollection で) この変更をトリガーしたいのですが、機能しません。

ここに私のコードの一部があります:


私が使用する場合

1)

2)