Knockout View Model の定義の違い: オブジェクト リテラルと関数
Knockout.js では、いずれかのオブジェクト リテラルを使用してビュー モデルを宣言できます。または関数として。どちらのアプローチでも機能的なビュー モデルを作成できますが、考慮に値する重要な違いがあります。
オブジェクト リテラル:
例:
<code class="javascript">var viewModel = { firstname: ko.observable("Bob") };</code>
関数:
例:
<code class="javascript">var viewModel = function() { this.firstname= ko.observable("Bob"); }; ko.applyBindings(new viewModel ());</code>
関数を使用する利点:
これへの直接アクセス: 関数は、作成されるインスタンスへの直接アクセスを提供し、計算されたオブザーバブルの定義とイベント コールバックの処理を容易にします。例:
<code class="javascript">var ViewModel = function(first, last) { this.first = ko.observable(first); this.last = ko.observable(last); this.full = ko.computed(function() { return this.first() + " " + this.last(); }, this); };</code>
ユースケース:
使用するスタイルを決定するときは、次の点を考慮してください:
最終的に、オブジェクト リテラルと関数のどちらを選択するかは、ビュー モデルの複雑さと要件によって決まります。どちらのアプローチでも関数型のビュー モデルを作成できますが、関数型の方が柔軟性と制御が優れています。
以上が## オブジェクト リテラルと関数: どちらのノックアウト ビュー モデル定義が適切ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。