[英]KnockoutJS - How to data-bind an observable that is created inside options extend
[英]KnockoutJS relation between observable and data-bind
我有viewModel
var viewModel = {
amount: ko.observable(1),
rate: ko.observable(2),
rate222: ko.observable(2)
};
<input data-bind="value: amount" />
<input data-bind="value: rate" />
我怎么知道rate222在此文檔上不綁定?
最好的祝福
UPD:
此處無法解決此問題jsfiddle.net/x26sS/14不在DOM中綁定值“ rate222”,但敲除並不這樣認為:“ show,rate12312”。
在Knockout中,沒有一種很好的方法可以明確地知道一個元素是開箱即用的。
編寫自定義綁定將bound
標志添加到可觀察的或計算的,然后在查找“未綁定”屬性時可以使用的計算將非常容易。
綁定可能看起來像:
ko.bindingHandlers.track = {
init: function(element, valueAccessor) {
var observable = valueAccessor();
if (ko.isObservable(observable)) {
observable.bound = true;
}
//clear the flag if this element is removed
ko.utils.domNodeDisposal.addDisposeCallback(element, function() {
var observable = valueAccessor();
if (ko.isObservable(observable)) {
observable.bound = false;
}
});
}
};
您甚至可以包裝值綁定以在其中添加此功能。
這是一個在元素上使用此綁定的示例,然后提供了一個遍歷視圖模型的功能(僅在示例中為頂級)並查找任何未綁定的屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.