5

Quando si aggiorna la mia app Web da underscore 1.6 a 1.7, viene visualizzato il seguente errore "elenco non definito". Quando si utilizza il trattino basso 1.6 funziona perfettamente. Qualche idea?Errore di aggiornamento del modello a underscore 1.7

//acquire the list template 
$.get('tpl/listTpl.html', function(templates) { 

//run underscore js on the list template and pass in the full collection of models 
var template = _.template(templates, {list:app.collections.list.models}); 

//load the underscore template into the DOM 
that.$el.html(template); 

});

+0

Qual è il messaggio di errore esatto? Proviene dal modello o dal JavaScript? Sei sicuro che 'app.collections.list.models' è impostato come ti aspetti? –

risposta

16

Dalla 1.7.0 changelog:

sottolineatura dei modelli delle più accettare un oggetto di dati iniziale. _.template restituisce sempre una funzione ora.

Sarà necessario modificare il codice al seguente:

$.get('tpl/listTpl.html', function(templates) { 
    var template = _.template(templates); 
    var result = template({list:app.collections.list.models}); 
    that.$el.html(result); 
}); 
+0

Consiglierei di leggere i changelog per rilevare eventuali altre modifiche. Underscore non usa il versioning semantico, quindi ci sono assolutamente le interruzioni tra le versioni 1.6 e 1.7, anche se non influenzano tutti. –

+1

Grazie, Ishmael! Ha funzionato un fascino. Apprezzo davvero il tuo aiuto. –