Задать вопрос

Backbone: предзагрузка вьюшек

Есть html-страница, часть из которой (некий список с кнопочками) обрабатывается при помощи backbone. (коллекция + модель + вид для коллекции + вид для модели). Необходимо сделать так, чтобы при первоначальной загрузке html-страницы с сервера, сразу же отображалось первоначальное состояние этого списка. То-есть список должен быть сгенерирован сервером, а потом backbone должен подхватить его.

С коллекцией проблем нет. Делаю в html-шаблоне страницы так:
<script> myCollection.reset({{myList}}); </script>

А вот как подцепить вьюхи не въезжаю. Есть идеи? Может кто ссылочку подскажет соответствующую?
  • Вопрос задан
  • 3841 просмотр
Подписаться 6 Оценить Комментировать
Решения вопроса 1
zag2art
@zag2art Автор вопроса
Решение оказалось простым: у въюшек есть фунция setElement, которой можно привязать к ней уже срендеренный HTML. Она же и обработчики переподвязывает.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xel
@xel
front end developer
Правильная backbone-view работает либо с коллекцией либо с моделью.
Твоя view работает с коллекцией.

В initialize вешаешься на событие sync — вызов render.
В render делаешь проверку this.collection.isEmpty()
Если не пуста — отрисовываешь.

При создании view сразу же вызываешь render.
Тогда независимо от порядка загрузки всё будет отрисовано.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы