我有一个可观察的数组,它包含多个对象,每个对象都有一个名为display
的布尔属性。
var markers = [];
var ViewModel = function() {
var self = this;
// Observable arrya
self.dineList = ko.observableArray([]);
}
var viewModel = new ViewModel();
ko.options.useOnlyNativeEvents = true;
ko.applyBindings(viewModel);
// data is data from ajax request
function createMarker(data) {
markers = [];
data.forEach(function(data) {
var marker = {
title: 'abc',
display: true,
// and other properties
}
markers.push(marker);
}
viewModel.dinelist(markers);
}
我在页面上的列表中显示所有标记。
<ul data-bind="foreach: dineList">
<li data-bind="text: $data.title"></li>
</ul>
最初所有元素都有display: true
并且工作正常,但我希望根据特定条件切换display
的值,并根据li
项的display
项的可见性进行切换{1}}财产。我可以切换display
数组中所有元素的markers
值,但不能切换dineList
数组中的所有元素的值。