我正尝试从服务器中将元素添加到可观察数组中。为什么我不能将数据连接到可观察数组中敲除
这里是我的ViewModel:
function ArticlesViewModel() {
var self = this;
this.listOfReports = ko.observableArray([]);
self.loadReports = function() {
$.get('/router.php', {type: 'getReports'}, function(data){
for (var i = 0, len = data.length; i < len; i++){
self.listOfReports.push(data[i]);
}
}, 'json');
};
self.loadReports();
};
而且它完美的作品。但我知道我可以使用concat()在JavaScript中合并两个数组,并据我所知concat works in knockout。所以当我尝试用self.listOfReports().concat(data);
或self.listOfReports.concat(data);
替换我的循环时,屏幕上不显示任何内容。
在第一种情况下没有错误,第二个错误告诉我没有方法concat。
所以我怎么能concat数据没有我的循环。而且我会很高兴听到为什么我的方法是行不通的
observableArrays不支持concat方法,这里有一个公开的问题:https://github.com/knockout/knockout/issues/786 – Tanner
奇怪,因为我认为在[这个问题](http:// stackoverflow.com/q/19221174/1090562)一个人正在拼接可观察数组。所以据我了解,我采取的方法(循环和推动)是最好的? –
我可能是错误的,我总是倾向于使用循环/推式方法 – Tanner