我有名字和姓氏作为可观察的,用户名是计算的。是否也可以使用户名可观察?
答案 0 :(得分:2)
在Knockout中计算已经是一种可观察的。如果您希望能够设置计算值,则可以使用read
和write
属性来执行此操作。
这是设置名字和姓氏的一个非常粗略的例子:
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/