Ich habe eine Backbone-Ansicht, wo der Klassenname dynamisch mit einer Funktion gesetzt:Set Render auf Backbone Ansicht dynamisch Klassennamen
app.Views.ItemRequestView = Backbone.View.extend({
tagName : 'tr',
className : function(){
var classRow = '';
if(this.model.getState() == app.Models.Request.status.wait.key) {
classRow = app.Models.Request.status.wait.color + ' bolder';
}
else if(this.model.getState() == app.Models.Request.status.confirm.key){
classRow = app.Models.Request.status.confirm.color + ' bolder';
}
return classRow;
},
Als ich das Modell der Ansicht aktualisiere ich löse eine Ereignisänderung, die die Ansicht machen . Das Problem ist, dass der Klassenname nicht mit dem Rendern neu berechnet wird ... Wie kann ich den Klassennamen neu berechnen, wenn ich die Ansicht rende?
Wer hat eine Idee? Danke
Wunderbar, vielen Dank! – user2568596
overkill alert, alles, was Sie tun müssen, ist dies. $ El.addClass ('Klassenname') ', bevor die Ansicht angezeigt wird. –
Es sei denn, Sie tun etwas komplizierter als das Hinzufügen einer Klasse (Hinzufügen einiger, Umschalten einiger, etc). Aus diesem Grund ist es nicht übertrieben, es ist robust. –