Sto usando Backbone e quindi Underscore per il rendering dei miei modelli. I miei modelli vengono renderizzati nei tag <script>
e quindi uso jQuery per prendere il loro html. La mia opinione spina dorsale si presenta così:Come memorizzare correttamente un modello javascript, in modo che non venga istanziato più volte
App.ItemView = Backbone.View.extend({
className:'well',
events: {
'click .continue': 'handleContinueClick',
},
initialize: function() {
this.template = _.template($("#ItemTemplate").html())
this.render()
},
render: function() {
$(this.el).html(this.template({model:this.model}))
},
handleContinueClick: function(e) {
alert('Clicked!')
}
})
mia edizione è vorrei solo andare e afferrare l'html una volta e solo una volta per questo particolare tipo di vista in modo che se ho un sacco di oggetti non è così vai alla ricerca del codice html per questo modello ogni volta.
In pratica, come si memorizza correttamente la variabile di modello al livello dell'oggetto ItemView
(non l'istanza della vista) tenendo presente che il recupero dell'HTML deve attendere fino al termine del caricamento della pagina (in modo da garantire il modello html è disponibile).
c'è un motivo ti stai preoccupando di questo? Spero che tu capisca i mali dell'ottimizzazione prematura. – JayC
certo, se qualcuno può dirmi che non importa, io sono figo con quello. hai ragione è prolly presto, sono solo curioso – MattoTodd
@JayC - stai praticamente dicendo "L'accesso DOM per la stessa cosa, più volte, è l'ottimizzazione prematura", che è piuttosto lontano dalla verità. Se i dati non cambiano mai, richiedili solo una volta. –