我有這個旋鈕。用旋轉工具旋轉成麻煩
當設置它是確定,控制顯示正確的價值,沒有錯誤消息,但如果我改變它,我每次收到此錯誤信息:
「類型錯誤:可觀察到的是不是一個函數」
在這一行:
observable($(element).spinner("value"));
這是我的自定義線結合,這是這樣的:
ko.bindingHandlers.spinner = {
init: function (element, valueAccessor, allBindingsAccessor) {
//initialize datepicker with some optional options
var options = allBindingsAccessor().spinnerOptions || {};
$(element).spinner(options);
//handle the field changing
ko.utils.registerEventHandler(element, "spinchange", function() {
//var observable = valueAccessor();
var observable = ko.utils.unwrapObservable(valueAccessor());
observable($(element).spinner("value"));
});
//handle disposal (if KO removes by the template binding)
ko.utils.domNodeDisposal.addDisposeCallback(element, function() {
$(element).spinner("destroy");
});
},
update: function (element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor()),
current = $(element).spinner("value");
if (value !== current) {
$(element).spinner("value", value);
}
}
};
如果我換失敗與被註釋掉一個行:
var observable = valueAccessor();
它工作正常。 爲什麼第一個失敗?