我正在使用knockoutjs教程将数组转换为可观察的数组。http://knockoutjs.com/documentation/observableArrays.html。但是下面这行代码给了我一个长度为零的数组。
var anotherObservableArray = ko.observableArray([
{ name: "Bungle", type: "Bear" },
{ name: "George", type: "Hippo" },
{ name: "Zippy", type: "Unknown" }
]);为什么anotherObservableArray不工作?
发布于 2013-02-19 15:41:39
您应该访问基础数组的长度,而不是可观察的数组本身。
anotherObservableArray().length将为您提供适当的长度。
检查这个小提琴:http://jsfiddle.net/jfSG8/
发布于 2013-02-19 15:40:13
您还没有告诉我们您是如何使用var anotherObservableArray的,但是以下内容应该是有效的:
<ul data-bind="foreach: anotherObservableArray">
<li data-bind="text: name"></li>
</ul>使用knockout / js:
var viewModel = function() {
this.anotherObservableArray = ko.observableArray([
{ name: "Bungle", type: "Bear" },
{ name: "George", type: "Hippo" },
{ name: "Zippy", type: "Unknown" }
]);
};
ko.applyBindings(new viewModel());参见this jsfdiddle。
注意,我并没有使用var来存储可观察数组,而是将其创建为视图模型上的一个属性。
https://stackoverflow.com/questions/14952096
复制相似问题