簡體   English   中英

可觀察與數據綁定之間的KnockoutJS關系

[英]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;     
            }     
       });           
    }
};

您甚至可以包裝值綁定以在其中添加此功能。

這是一個在元素上使用此綁定的示例,然后提供了一個遍歷視圖模型的功能(僅在示例中為頂級)並查找任何未綁定的屬性。

http://jsfiddle.net/rniemeyer/x26sS/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM