Attualmente sto provando a propagare un modello di riga tabella <tr>
in un tag <tbody>
. Ecco un esempio:Durandal/Knockout Template Binding Not Inserting
HTML:
<table>
<tbody data-bind="template: { name : 'tableTemplate', foreach : tableRow }">
</tbody>
</table>
<script type="text/html" id="tableTemplate">
<tr>
<!-- First Name -->
<td data-bind="text: firstName"></td>
<!-- Last Name -->
<td data-bind="text: lastName"></td>
</tr>
</script>
DurandalJS:
define(function(require) {
var self = this;
self.app = require('durandal/app');
return {
tableRow: ko.observableArray([
{ firstName: "DemoFirstName" , lastName: "ExampleLastName" },
{ firstName: "ExampleFirstName", lastName: "DemoLastName" }
]);
//viewAttached and other non-applicable console log functions here
};
});
Tutto in HTML sarà correttamente i dati-bind fino a quando non colpisce il tavolo; tutti i data-binds in seguito diventano morti.
Sono piuttosto nuovo per Durandal e sto imparando mentre vado.
Ci sono errori nella console javascript del browser? – nemesv
puoi pubblicare il tuo codice completo. Quello che hai mostrato qui dovrebbe funzionare. Inoltre, perché stai applicando l'app a questo? basta creare una nuova variabile. –
AGGIORNAMENTO: a causa di ciò che entrambi avete detto, ho iniziato a indagare attentamente in qualsiasi altro punto del codice che potrebbe causare problemi. C'era un vecchio collegamento dati da un autore precedente che si annidava vicino al fondo del DOM del modale causando un errore di console che il data-bind è morto/non va a niente (perché non l'ho notato prima? Ahimè , vivi e impari). Una volta che ho commentato, ho iniziato a ricevere un errore nella console dicendo "Impossibile trovare il modello con ID tableTemplate". Continuerò a indagare. – Arctic