
キーテイクアウト
- knockoutjsは、UI要素をデータモデルに接続するプロセスを簡素化するさまざまな内蔵バインディングを提供し、動的で応答性の高いUIを簡単に作成できます。
knockoutjsのテキストと値のバインディングは、HTML要素の簡単な双方向データバインディングを促進し、データモデルが変更されたときにUIを自動的に更新し、その逆の場合はUIを自動的に更新します。
- knockoutjsには、「click」や「submit」などのイベントバインディングが含まれています。これにより、開発者は手動イベント処理を必要とせずにUI要素に動作を追加し、開発プロセスを合理化できます。
ライブラリは、「可視」、「enable」、「css」などの条件付きおよびスタイルのバインディングをサポートしているため、開発者はデータモデルの状態に基づいて要素の可視性とスタイリングを動的に制御できます。
ドロップダウンリストの「オプション」バインディングやチェックボックスの「チェック済み」バインディングなどの高度な機能とラジオボタンは、UI内のより複雑なフォーム要素を処理するための堅牢なツールを提供します。
-
ノックアウトの初心者ガイド:バインディング-
ノックアウトは、最も一般的なタスクとシナリオに便利な組み込みバインディングのセット全体を提供します。これらのバインディングのそれぞれを使用すると、単純なデータ値をバインドするか、JavaScript式を使用して適切な値を計算できます。これにより、多くの柔軟性が提供され、最小限の労力で非常にダイナミックなUIを簡単に作成できます。
- ビルトインバインディングを使用するための構文は、HTML要素のデータバインド属性の内部にノックアウトバインディング名とビューモデルプロパティのペアを含めることです。
HTML要素の複数のプロパティにデータバインドする場合は、この構文を使用してバインディングをコンマで分離するだけです。
バインディングのほとんどがパラメーターをブール値に変換しようとすることに留意する必要があります。実際にはブール値ではない値を与えると、それは真実またはfalsyとしてゆるく解釈されます。これは、ゼロ以外の数字と非ヌルオブジェクトと非空白の文字列がすべて真であると解釈されるのに対し、ゼロ、ヌル、未定義、および空の文字列は偽と解釈されることを意味します。
あるタイプのデータバインディングを使用する方法を理解している場合、他のタイプのデータバインディングは非常に簡単に学ぶ必要があります。次に、説明と短い例を提供することで、それぞれを説明します。
単純なバインディング
// syntax: data-bind="bindingName: bindingProperty"
<span data-bind="text: msg"></span>
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
前のチュートリアルで観測可能性を扱う際に、すでにテキストの拘束力があることがわかりました。関連する要素のテキストをパラメーターの値に設定します。これは、DOM要素のInnerText(IE)またはTextContent(その他のブラウザ用)プロパティを設定することに相当します。パラメーターが数字または文字列以外のものである場合、バインディングはtoString()の結果を要素に割り当てます。
このパラメーターが観測可能な値である場合、バインディングは値が変更されるたびに要素のテキストを更新します。パラメーターが観察できない場合、要素のテキストを1回だけ設定し、後で再度更新しません。これは、すべてのバインディングに有効です。
テキストバインディングは、スパンまたはdiv要素の値を表示するためによく使用されます。使用すると、以前のテキストが上書きされます。
// syntax: data-bind="bindingName: bindingProperty"
<span data-bind="text: msg"></span>
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
値バインディングは、関連する要素の値をパラメーターの値に設定します。これは通常、入力、Select、Textareaなどのフォーム要素に使用されます。ユーザーが関連するフォームコントロールで値を編集すると、ビューモデルの値を更新します。同様に、ビューモデルの値を更新すると、画面上のフォームコントロールの値が更新されます。これは双方向結合として知られています。パラメーターが数字または文字列以外のものである場合、バインディングはtoString()の結果を要素に割り当てます。
デフォルトでは、ノックアウトは、ユーザーが変更イベントで別のDOMノードに焦点を合わせたときにビューモデルを更新しますが、以下のValueUpDateパラメーターを使用して値を更新すると制御できます。バインディングにもValueUpDateというパラメーターが含まれている場合、これは変更を検出するために使用するブラウザイベントノックアウトを定義します。
「変更」はデフォルトのイベントであり、ユーザーが異なるコントロールに焦点を移動するとき、または変更後すぐに
以上がNockoutjsへの初心者ガイド:パート2の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。