0
我有以下代碼:嵌套模板
function Session(name, index) {
this.Messages = [];
this.Name = name;
this.Index = index;
}
var vm = {};
vm.Sessions = ko.observableArray([new Session("Foo", 0), new Session("Bar", 1)]);
ko.applyBindings();
vm.Sessions()[0].Messages.push("Hello foo");
沿着這樣的觀點:
<div data-bind="template: {name: 'TopTemplate', foreach: Sessions}">
</div>
<script type="text/html" id="TopTemplate">
<p>
${$data.Name}
<ul data-bind="template: {name: 'NestedTemplate', foreach: Sessions[${$data.Index}]}"></ul>
</p>
</script>
<script type="text/html" id="NestedTemplate">
<li>
${$data}
</li>
</script>
正如你可以看到有與含陣列的對象。因此,我創建了可觀察的會話數組,並且它變得可觀察,包括內部屬性。我想在這裏顯示嵌套的「中繼器」。
昨天我以某種方式成功執行此腳本。有趣的是沒有顯示房產名稱,即Sessions[${$data.Index}].Messages
。不幸的是,我刪除了這個測試腳本。
現在我試圖重新創建它並不起作用。
PS。事情是我不想讓它在沒有顯示相關屬性的情況下工作。我只想使嵌套模板工作。
對不起那個。這只是從編輯器複製粘貼時的不準確。所有ID均正確放置。 – Oybek
我更新了答案,但花了一些時間擺弄 –