0

ウィンドウの生成とデフォルトの設定に使用するカスタム バインディングを Knockout で作成しました。

ウィンドウは ajax 呼び出しを行い、コンテンツとして使用するテンプレートを取得します。

このコンテンツがバインドされていることを確認する方法はありますか?

つまり、テンプレートがページにロードされたら、テンプレート内のノックアウト バインディングをレンダリング/処理する必要があります。

それに加えて、コンテンツのバインディングのコンテキストがどうなるかを設定できる方法はありますか?

つまり、私のカスタム バインディングから、「value.contentOptions」オブジェクトは、ウィンドウに読み込まれるコンテンツの開始レベルであると言いたいです。

ko.applyBindingsToDescendantsbindingContext.createChildContextko.applyBindingsToNode 、およびcontrolsDescendantBindingsのいくつかの組み合わせを感じますが、残念ながらそれを理解できないようです

私はコードを投稿しますが、この時点ではただの推測 D: - 私のバインディング コードの一部を見たい場合は、私に知らせてください。

私がやろうとしていることで私が見るいくつかの警告:

非同期であるため、おそらくバインドが完了するまでコンテンツは読み込まれず、サーバーに移動する必要がある場合があります。

私のカスタム バインディングは剣道ウィンドウのラッパーであり、組み込みの「コンテンツ」機能を使用しようとしています <- この機能を使用する必要はありませんが、現時点で可能な場合はウィンドウを保持したいと考えています.

4

2 に答える 2

0

これはまさに私がコンボボックスのバインドを行った理由です (ノックアウト用の釣り上げられていないコンボボックスです)

カスタムテンプレートソース(スクリプトタグを使用するビルドインの代わりに)を使用してから、ko.renderTemplateをconstrol descents trueと一緒に使用します。私の答えはこちらをご覧ください

ノックアウト データ ドリブン テーブルをノックアウト データ ドリブン アコーディオン ペインに追加

編集: async ajax テンプレートのロードについては、初期化時に空のダミー templta にバインドし、実際のテンプレートがロードされたときにバインドすることができます。テンプレート名をオブザーバブルにバインドするようにしてください。

于 2012-12-21T10:10:11.157 に答える