問題タブ [backbone-stickit]

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 投票する
0 に答える
356 参照

javascript - 非常に基本的な例でのバックボーン メモリ リーク

これは、私が取り組んできたプロジェクトの簡単な例です。

すべて正常に動作していますが、何らかの理由でメモリ使用量が増加し、一部の要素が DOM から削除されていません。

バックボーンのメモリ リークに関する多くの記事を読みましたが、役に立ちませんでした。

モデルバインディングに Backbone.stickit を使用していますが、これが問題の原因だと思います。

最高のメモリ パフォーマンスを得るには、このコードをどのように修正すればよいですか? jsbin でサンプル コードを確認し、vimeoでパフォーマンス テスト ビデオを確認してください。

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

jquery - Backbone stickit - クラス名と修飾された「this」を使用してバインドします

stickit私はよく、 jQuery ターゲットに何らかの命名規則を提供し、それぞれを対応するコレクション要素と 1対 1 でペアIDにする形式で提供していることに気づきます。これは、が問題の特定のビューのみを更新し、他の同様の集計ビューを更新しないようにするためです。some-aggregate-individual-element-{#number}IDstickitView

「ルート」ノードに更新を実行するようにID何らかの方法で指示できる場合、この目的のために sではなくクラス名を使用する方法があるはずです。stickitたとえば、a を定義していViewて と言うbindings: { ".individual-title": { observe: "Title" } }場合、は属性が由来するstickitことを知っているので、修飾する必要はありません。ただし、左側に同じロジックを適用するたびに、ビューのルート ノードである の下にあるノードだけでなく、そのクラス名を持つドキュメントのすべてのノードに対して更新を実行します。Titlethis.modelstickitthis.$el$el

これを達成するための組み込みまたはその他の簡単な方法はありidますか? それとも、これはあなたがしなければならないことですか?

0 投票する
0 に答える
154 参照

javascript - 無効な要素への backbone-stikit バインディング

モデルバインディングにバックボーンとスティキットを使用しています。ビジネスケースによっては、サーバーから送信されたモデルがフラグを設定して、値が別のモデル属性にバインドされている html 要素を無効にする場合があります。

問題は、悪意のあるユーザーがコンソールを使用して要素を元に戻し、その値を変更した場合、stikit バインディングによってモデルが更新されることです。

ここでの質問は、この動作を停止するためのベスト プラクティスは何かということです。ビジネスで使用する場合、データを表示するために要素データをレンダリングする必要があることを念頭に置いてください。

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

javascript - stickit でバインドされた select の OptionGroup

編集ページのクライアント側で Backbone.stickit、Backbone.marionette、および Backbone を使用します。

モデルのフィールドの 1 つがドロップダウン (<select>) から選択され、ドロップダウンにオプション グループ (<optgroup>) を作成したいと考えています。どのようにできるのか?

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

backbone.js - Backbone + Stickit を使用して、フォームの送信時にモデルが更新されない

backbone.stickitライブラリを使用してフォーム入力をモデルにバインドしようとしていますが、モデルを正しく更新できないようです。

キーアップ イベントは正しく動作しているように見えます。「onSet」コールバックを使用して表示すると、値が変化することがわかります。

これが私のコードです(jsfiddle で実行します):

HTML

JavaScript

0 投票する
0 に答える
277 参照

ajax - Select2 Ajax からの結果を選択した後の Stickit/Backbone モデルの未定義オブジェクト

ここに jsfiddle があります。私はほぼ同じフィドルMy Fiddle を Ajaxで使用しました。ここに Matt のStickit MultiSelect Select2 と配列 がありますが、選択構成に ajax 属性が追加されています。

結果をクリックすると、モデルは未定義の属性をモデルの console.log(this.model.attributes)結果の友人に設定します: [1,2,undefined]。

change イベントは getVal 関数を呼び出すだけで、ここでは未定義の値が返されます。

選択オプションを追加する更新機能とは異なり、結果をクリックしてもオプションが追加されたり、 addSelectOptions 関数が呼び出されたりすることはないと思います。

しかし、を使用するgetVal:function($el,event,options){return $el.val(val);}と、値 [1,2,4] だけが返されます。ただし、ネストされたコレクションがある場合は、オブジェクト全体ではなく値が返されます。

AJAX 呼び出しから返されたオブジェクト全体が必要であり、選択時にモデル属性に設定します。

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

backbone.js - ネストされた属性を持つ Backbone Stickit

backbone.stickit でネストされた属性 (state.city など) をバインドして観察するきれいな方法はありますか?

助けてくれてありがとう。