在KnockoutJS中也可以计算出是可观察的

时间:2014-08-29 17:45:16

标签: knockout.js knockout-2.0 knockout-validation

我有名字和姓氏作为可观察的,用户名是计算的。是否也可以使用户名可观察?

1 个答案:

答案 0 :(得分:2)

在Knockout中计算已经是一种可观察的。如果您希望能够设置计算值,则可以使用readwrite属性来执行此操作。

这是设置名字和姓氏的一个非常粗略的例子:

var fn = ko.observable("Jimbo");
var ln = ko.observable("Jangles");

var vm = {
    myComputed : ko.computed({
        read: function () { return fn() + " " + ln(); },
        write: function (value) {
            var pieces = value.split(" ");
            fn(pieces[0]);
            ln(pieces[pieces.length -1]);
        }
    })
};

以下是一个有效的例子:http://jsfiddle.net/xxkLs0p8/