2
我有两个属性的模型:标题和内容,我想要做的是:淘汰赛:写作和阅读计算性能
如果标题具有值,使用它,但如果它是空白使用第一20个字符+来自内容的“...”。
这是模型:
function Note(title, content) {
var self = this;
self.content = ko.observable(content);
self.title = ko.computed({
read: function(){
if(!title){
var content = self.content();
if(content) return content.substring(0,19) + "...";
}
},
write: function(title){
return title;
}
});
}
标题值被正确地从内容更新,但是这是不可能的(对我来说),以获得直接在标题的工作写..
在RP尼迈耶唯一的问题答案是我必须只有在阅读/写作的财产,这是可能的吗?
抱歉,但我需要一个属性来显示/写而不是两个,这可能吗? – 2012-04-26 14:56:32
我不确定你的具体要求,但有几种方法可以使它看起来好像有一个属性。这里是真正的观察者是私人的:http://jsfiddle.net/rniemeyer/LFzzq/。这里是你使用子观察值进行显示的地方:http://jsfiddle.net/rniemeyer/LFzzq/3/当你将它转换成JSON发送回服务器时,它自然会丢失。 – 2012-04-26 15:11:07
我的问题是我打算使用带contentEditable =“true”的div,因此输入也是输出,它不能是可观察的,而是计算的属性,因为标题可能会更改 – 2012-04-26 15:49:53