【问题标题】:problems after upgrade to knockout 3.1升级到淘汰赛3.1后的问题
【发布时间】:2014-11-13 19:56:21
【问题描述】:

当我想处理淘汰赛 2.0 中的单选按钮时,我使用了下面的代码,但现在我升级到淘汰赛 3.1,下面的代码抛出异常说更新不是一个函数。

ko.bindingHandlers.radioOnOffBoolean =
{
    init: function (element, valueAccessor, allBindingsAccessor) {
        var value = valueAccessor();
        var newValueAccessor = function () {
            return ko.dependentObservable({
                read: value,
                write: function (newValue) {
                    value(newValue === "On");
                }
            });
        };

        ko.bindingHandlers.checked.init(element, newValueAccessor, allBindingsAccessor);
    },
    update: function (element, valueAccessor) {
        var value = ko.utils.unwrapObservable(valueAccessor());
        var newValueAccessor = function () {
            return value ? "On" : "Off";
        };
        ko.bindingHandlers.checked.update(element, newValueAccessor);

    }
};

【问题讨论】:

    标签: knockout-mapping-plugin


    【解决方案1】:

    Knockout v3 现在在比较已检查绑定的模型值和元素值时检查严格相等。

    var isCheckedValue = ko.observable(true);
    
    <input type="radio" name="example" data-bind="checked: isCheckedValue, checkedValue: true" /> 
    

    【讨论】:

      猜你喜欢
      • 2015-03-30
      • 2014-09-18
      • 1970-01-01
      • 1970-01-01
      • 2012-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多