問題タブ [bindinghandlers]

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 に答える
1285 参照

binding - 画像のsrcバインディングが変更されたときのノックアウトjsフェードトランジションバインディングハンドラ

次の単純な js/knockout コードがあるとします。

.js (ビューモデル):

見る:

画像のプロパティが変更されたときに単純なクロスフェードを実行する ko バインディング ハンドラーを作成するにはどうすればよいですか?

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

ajax - DOM の更新後に Knockout bindingHandler->Update を呼び出す方法

私は KO bindingHandler で jquery アコーディオンを使用しています。アプリの要件によって ajax を使用して、アコーディオン UI で使用される DOM を設定する必要があります。

私の bindingHandler は次のように単純でなければなりません

update メソッドは observableArray (faqList) が変更されたときに呼び出されますが、その時点で UI アコーディオンは DOM 構造が既に設定されている必要がありますが、これは true ではなく、update メソッドが呼び出された後に KO が作成されるようです。DOM 構造に新しいコンテンツが取り込まれた後、更新の呼び出しを行うにはどうすればよいですか?

これがデフォルトの DOM です。

コードペン

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

knockout.js - css ノックアウト バインディングをカスタム バインディングでラップするにはどうすればよいですか?

一連の CSS バインディングをカプセル化するカスタム バインディングを作成しようとしています。具体的には、次の代わりに:

これ欲しい:

バインディングは、このajaxStatus実装の詳細をアプリ全体に散りばめるのではなく、適切な css バインディングを開始するカスタム バインディングになります。ただし、cssbindingHandler には init 関数がないため、これを機能させる方法が完全にはわかりません。

各オブザーバブルをサブスクライブしてko.bindingHandlers['css'].update、観測値が のときに呼び出すことができると思いますtrue。私が検討した別の可能なオプションは、css バインディングを html 要素に挿入し、ノードを再バインドすることです (これが、この fiddle でapplyBindingsToNode例示されている本質だと思います。

誰かがより良いアイデアを持っていますか?

ありがとう、ヴィニー

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

knockout.js - afterAddを使用したKnockoutjs foreachカスタムバインディングハンドラー

カスタム bindingHandler を構築したい

afterAdd時にハイライト効果のあるko.bindingHandlers.foreachWithHighlight。

ドキュメントから

しかし、私は常にこれを自分の valueAccessor に追加して、foreach バインディングに渡したいと思っています。

サーバーからのすべてのノードが追加されたときに初めて実行されないようにするにはどうすればよいですか。新しいノードが追加されたときに実行したいだけです。

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

data-binding - ページの読み込み時に初期化されないエクステンダーで Observable に初期化/アタッチされた Observables

II は、入力した文字数と残りの文字数をユーザーに知らせるテキスト カウンターを作成しました。これは、テキスト領域にフォーカスがあり、テキスト領域がフォーカスを失ったときに表示されなくなります。

エクステンダーを使用して、渡されるオブザーバブル オブジェクトを拡張するバインディング ハンドラーを作成しました。問題は、テキストを入力し、テキスト領域から移動してから、テキスト領域に戻った後にのみ機能することです。

コメントを外すと:

ページは最初から希望どおりに動作しますが、ビュー モデルにエクステンダーのオブジェクトの 1 つが含まれているため、エクステンダーを使用する目的全体が無効になります。

ここで欠けている比較的単純なものがあると信じなければなりません。

ご協力いただきありがとうございます..