Encontre um Backbone.js Ver se você conhece o modelo?
Dada uma página que usa Backbone.js para ter uma coleção vinculada a uma visão (RowsView
cria um<ul>
) que cria sub-vistas (RowView
cria<li>
) para cada modelo na coleção, tenho um problema ao configurar a edição sequencial para esses modelos na coleção.
Eu criei umedit()
método noRowView
vista que substitui oli
conteúdo com uma caixa de texto, e se o usuário pressionartab
enquanto na caixa de texto, eu gostaria de acionar oedit()
método da próxima Visualização na lista.
Eu posso pegar o modelo do próximo modelo da coleção:
// within a RowView 'keydown' event handler
var myIndex = this.model.collection.indexOf(this.model);
var nextModel = this.model.collection.at(myIndex+1);
Mas a questão é como encontrar a Visualização anexada a esse Modelo. PaiRowsView
O modo de exibição não mantém uma referência a todos os modos de exibição filhos; Estárender()
método é apenas:
this.$el.html(''); // Clear
this.model.each(function (model) {
this.$el.append(new RowView({ model:model} ).render().el);
}, this);
Preciso reescrevê-lo para manter uma matriz separada de ponteiros para todos osRowView
s tem sob isso? Ou existe uma maneira inteligente de encontrar o View que tem um modelo conhecido?
Aqui está um jsFiddle de todo o problema:http://jsfiddle.net/midnightlightning/G4NeJ/