在下面的小提琴/代码中,为什么viewModel.visibleItem.push工作但不是viewModel.showItem?
http://jsfiddle.net/scottbeeson/SRUKN/20/
var viewModel = {
searchResult: ko.observableArray(ko.utils.arrayMap(dummyResults, function (item) {
return new SearchResult(item);
})),
visibleItem: ko.observableArray(ko.utils.arrayMap(dummyItems, function (item) {
return new VisibleItem(item);
})),
showItem: function (item) {
visibleItem.push(item);
}
};
ko.applyBindings(viewModel);
$(document).on('click', '.result', function() {
var item = ko.dataFor(this);
//viewModel.visibleItem.push(item);
viewModel.showItem(item);
});
更新修复错误,更新代码和小提琴。
答案 0 :(得分:2)
您尚未在viewmodel中定义 visibleItems
,因此正在尝试推送到不存在的数组。
错字?