我正在与淘汰赛作斗争,试图获得一个嵌套的 foreach 语句来呈现
我有一个视图模型
var ViewModel = function (transactions) {
var self = this;
self.transactions = ko.observableArray(ko.utils.arrayMap(transactions, function (transaction) {
return new Transaction(
transaction.TransactionId,
transaction.Items);
}));
我的模特
var Transaction = function (TransactionId,Items)
{
var self = this;
self.transactionId = ko.observable(TransactionId);
self.items = ko.observableArray(Items);
我在我的页面视图中绑定了视图模型
var viewModel = new ViewModel([{"TransactionId":1007,"Items":[{"ItemId":1,"Description":"123"}]}]);
ko.applyBindings(viewModel, document.getElementById("process"));
html 的缩减版看起来像
<ul data-bind="foreach: transactions">
<li>
<div class="title" data-bind="text:transactionId"></div>
<ul data-bind="foreach: items">
<li>ABC</li>
<ul>
</li>
我没有收到错误,但是我的无序列表没有被呈现。我在这里做一些明显错误的事情吗?
我创建了一个复制问题的 jsfiddle。可以在这里找到... JSFiddle