Fondamentalmente quello che serve è di fare qualcosa di simileCome posso impostare in modo dinamico un nomeClass per una vista Backbone.js in base agli attributi del modello?
App.CommentView = Backbone.View.extend({
className: function() {
if (this.model.get('parent_id')) {
return 'comment comment-reply';
} else {
return 'comment';
}
},
Il problema è, che alla funzione passata a className
viene eseguito nel contesto del HTML del modello di vista, quindi non posso chiamare this.model
.
C'è un modo per accedere al modello a questo punto del processo di rendering? O devo impostare la classe più tardi, ad esempio nella funzione render
?
No, che non è vero. Quella funzione "attributi" è esetusa al metodo _ensureElement(), ea quel punto non si ha accesso a questo.model –