Javascript-форум (https://javascript.ru/forum/)
-   Backbone.js (https://javascript.ru/forum/backbone/)
-   -   Поиск и обновление данных коллекции (https://javascript.ru/forum/backbone/64688-poisk-i-obnovlenie-dannykh-kollekcii.html)

dik0 29.08.2016 19:11

Поиск и обновление данных коллекции
 
Добрый день!

У меня есть вид секции, который выводит секции и внутри них элементы.
Как правильно строить такую структуру если необходимо в событии элемента найти элемент секции (то есть мне в элементе нужено найти ID секции к которой этот элемент относится, и еще было бы лучше сразу найти несколько зависимых секций связанных с этим элементом)?
Mdk.Views.Option - это элемент
Mdk.Views.Section - это секция

Я так понял необходимо ID секции передать в вывод элемента. В моем коде в строке idCollection: option.cid - я хочу передать ID секции которой у меня нет, option.cid это совсем не то.

/**
 * Секции
 */
Mdk.Views.Sections = Backbone.View.extend({
  tagName: 'tbody',
  initialize: function () {
  },
  render: function () {
    this.collection.each(this.addSection, this);
    return this;
  },
  addSection: function (section) {
    // секция
    var sectionView = new Mdk.Views.Section({ model: section });
    this.$el.append(sectionView.render().el);
    // элементы секции
    section.collection.each(this.addOption, this);
  },
  addOption: function (option) {
      var optionView = new Mdk.Views.Option({ model: option, id: 'field-' + option.id, idCollection: option.cid  });
       this.$el.append(optionView.render().el);
  }
});

destus 29.08.2016 19:34

dik0,
Что мешает в функцию addOption передать этот самый id секции?

armidoll 30.08.2016 15:50

dik0,
Mdk.Views.Sections = ...

а чего не через export/import в стиле ES2015 ?
https://learn.javascript.ru/modules


Часовой пояс GMT +3, время: 18:31.