我是新手敲门我得到了错误“初始化一个可观察数组时传递的参数必须是一个数组,或者是null,或者是未定义。我不知道如何解决它。任何人都可以帮助我请。
viewModel = function ()
{
var self = this;
self.rows = ko.observableArray([]);
self.items = ko.observableArray(childData.items);
self.otherCharges = ko.observableArray(childData.otherCharges);
self.add = function (type) {
var entry = new Entry({});
entry.SNo(VMRows().length);
entry.Type(type);
self.rows.push(entry);
};
self.remove = function (entry) {
self.rows.remove(entry);
i = 0;
ko.utils.arrayForEach(VMRows, function (e) {
e.SNo(i++);
});
};
};
VM[container] = new viewModel();
var VMRows = VM[container].rows;
答案 0 :(得分:3)
消息非常明确:您已将值传递给ko.observableArray
,而不是数组,null
或undefined
。这告诉我们childData.items
或childData.otherCharges
不是数组,不是null
,而不是undefined
。其中至少有一个是其他值。 (显然我无法告诉你哪个;你还没有告诉我们childData
是什么。)