私はついに、新しいMVC4アプリケーションを構築しながらKnockoutJSの学習を開始する時間を見つけました。ビューにすでに設定されているデフォルト値から監視可能な値を初期化するための最良の方法を見つけようとしています。
これは不自然な例ですが、次のように、オブザーバブルのデフォルト値をビューに直接レンダリングしたいと思います。
<input type="hidden"
value="@Model.SomeValue"
data-bind="value: myObservableReference"/>
デフォルト値は通常、次の方法で初期化されることを知っています。
model.myObservableReference = ko.obervable("SomeValue");
ただし、次のように初期化を拡張する方法を見つけたいと思います。
model.myObservableReference = ko.obervable();
値が存在する場合、バインディングから既存の値を読み取ります。
これまでのところ、KnockoutJSコードがかみそりの世界を完全に認識しないように管理しているので、次のようなだらしなさを避けたいと思います。
model.myObservableReference = ko.obervable(@Model.SomeValue);
これはエクステンダーかカスタムバインダーのどちらかで処理できると思いますが、誰かが私を正しい方向に向けてくれれば幸いです。