Ho appena aggiornato un sito su cui ho lavorato da Backbone.js 0.5.3 a Backbone.js 0.9.2 Quando l'ho fatto ottengo un indefinito per il mio parametro delle opzioni che ho utilizzare nei miei modelli il metodo di inizializzazione. Cosa è cambiato da V.5 a V.9Backbone initialize: funzione (opzioni) non funzionante in V9
initialize: function (opzioni) {} enter code here
Ok ecco la mia struttura del modello. Tutto funziona alla 0.5.3 ma quando uso le opzioni 0.9.2 non funziona più.
this.myModel = Backbone.Model.extend({
defaults: function() {
return {
maxDays: 7,
index: 0
};
},
initialize: function(options) {
}
})
this.model = new myModel();
Nella versione 0.5.3 le opzioni mostreranno tutti gli attributi impostati nell'oggetto predefinito. ma nella versione 0.9.2 questo non funziona più restituisce undefined. Non riesco a pubblicare un collegamento a causa della sensibilità del cliente.
Ho aggiunto altro codice sopra. Quindi l'inizializzazione dovrebbe avere 2 parametri. Le opzioni sono state le seconde. Ma se dici che non è cambiato dalla V5, questo non spiega perché funzioni con un solo parametro in V5 e non in V9 – user1096509
Ho controllato il codice sorgente 0.5.3: https://github.com/documentcloud/ backbone/blob/29b60e53fa18b6fffb4a21d0d1c8c9fdbde43b6c/backbone.js # L132 e il codice sorgente 0.9.2: https://github.com/documentcloud/backbone/blob/863814e519e630806096aa3ddeef520afbb263ff/backbone.js#L189 ed entrambi accettano attributi e opzioni. Guardando il tuo codice ora ... –
Ok grazie, quindi ho aggiunto un secondo parametro al mio codice e ancora restituisce undefined per entrambi i parametri in V9. initialize: function (attributes, options) {È questo ciò a cui ti stai riferendo? Quindi in V5 solo il primo parametro funziona nel mio setup. – user1096509