0
我從Ajax源創建一個observableArray,它工作得很好。現在我想用來自第二個源的數據擴展一些數組項。用來自第二個源的數據擴展observableArray
例如:
{ id: 1, name: 'Hugo', age: 18 }
......後來我想補充:
{ id: 1, city: 'New York', country: 'US' }
...這將導致:
{ id: 1, name: 'Hugo', age: 18, city: 'New York', country: 'US' }
這可能與ko.mapping插件?我已經做了一些測試,結果是數組中項目的映射屬性已被第二個來源的屬性取代。
解決方案
嗯,這是實際上是非常容易解決。當使用地圖插件添加新數據時,我只需要檢查key
。現有數據僅通過附加數據進行擴展。
ko.mapping.fromJS(modifications, {
key: function(data) {
return ko.unwrap(data.id);
}
}, originalData);
但「LL上observableArray這項工作? –