0
我要地图JSON数组数据以下列方式来observablearray:敲除映射对象阵列可观测到的阵列和创建计算属性对象的foreach
var modell = function() {
self.activities = ko.observableArray();
...
ko.mapping.fromJS(dataJson, {}, self.activities);
// as a result I can use self.activities[0].FirstName or other properties
}
每个活动是复杂的对象。 为简单起见,我们可以假设每个活动内有两个属性 - FirstName
和LastName
。这很好,但是有可能写 映射选项,它会为每个活动创建可计算的可观察的FullName
?
所以,我需要引用像self.activities [0] .FirstName,以及self.activities [0] .FullName,其中FirstName是简单的可观察,但FullName计算。
编辑: 这是一个尝试的jsfiddle以下建议http://jsfiddle.net/5ScWn/ & & http://jsfiddle.net/8PK6F/,但它仍然无法正常工作。
我缺少的东西使用它,而是“活动”永远都达到了?这可能是因为dataJson没有'活动'映射元素,但是是obects数组? – renathy
这里是我的小提琴你的例子:http://jsfiddle.net/5ScWn/或这个http://jsfiddle.net/8PK6F/,在这个例子中我有更复杂的用户对象,它可以使问题? – renathy
@renathy我更新了你发布的第一个小提琴[here](http://jsfiddle.net/5ScWn/1/)。尽管我将计算出的'userFullName'从User'对象上移了一级。如果你想把它保存在'User'中,你必须添加addtl映射选项来为'Activities'可观察数组中的每个项目创建一个'User'可观察值。 – rwisch45