Marionette ItemView, wie man das Modell bei Änderung neu rendert

Ich bin mit LENKER template-engine.

also, ich hab das Modell:

Backbone.Model.extend({
        urlRoot: Config.urls.getClient,
        defaults: {
            contract:"",
            contractDate:"",
            companyTitle:"",
            contacts:[],
            tariff: new Tariff(),
            tariffs: [],
            remain:0,
            licenses:0,
            edo:""
        },
        initialize:function(){
            this.fetch();
        }
    });

dann Marionette ItemView:

Marionette.ItemView.extend({
        template : templates.client,
        initialize: function () {
            this.model.on('change', this.render, this);
        },
        onRender: function () {
            console.log(this.model.toJSON());
         }      
    });

dann nenne ich alles, was wie:

new View({
    model : new Model({id:id})
        })

und sofort das Rendern einer Ansicht, die für mich und das ist cool.
Aber nach dem Modell von abgerufenen Daten ist es trigger "ändern", also ich sehe in der Konsole serialisierte Modell zweimal, und ich sehe zum ersten mal leer Modell und dann gefüllt.

Aber die Ansicht wird NICHT aktualisiert.

Wie ich es beheben kann?

P. S. ich verstehe, dass ich anrufen kann eine render-Methode auf fetch erfolgt Rückruf. Aber ich brauche es weitere Maßnahmen, wenn der Benutzer wird sich ändern-Modell.

InformationsquelleAutor der Frage Vadim Ivanov | 2013-06-01

Schreibe einen Kommentar