Я изучаю BackboneJS. У меня есть несколько вопросов. Является ли распространенным явлением для повторного просмотра полного представления после того, как изменен contoller или модель? И нужно ли очищать контейнер в начале функции рендеринга?Должен ли я вызывать рендер после каждого изменения коллекции в BackboneJS
ответ
Сначала вам не нужно очищать контейнер в начале функции рендеринга (если, конечно, вы не хотите очистить контейнер).
Что касается вашего первого пункта, это, очевидно, зависит от ваших обстоятельств (насколько сложным является представление), но, хотя иногда он может заплатить, чтобы просто переписать весь вид, перезаписывая предыдущее содержимое, вам не нужно это делать. В backbone.js вы можете прослушивать изменения на particular attributes, а затем, поскольку у вас есть доступ к DOM element, просто обновите часть представления соответственно.
, например
initialize : function() { _.bind("change:name", nameChanged, this); },
nameChanged: function(event) { this.$el.find('.name').val(this.model.get('name'); }
1) Повторное предоставление полного представления на самом деле проще, чем обновление частей зрения, до тех пор, как сама точка зрения достаточно атомарными.
2) Нет, вам не нужно очищать контейнер, и он не имеет ничего общего с базой, но с вашей DOM-библиотекой, например. jQuery и ваш шаблонный движок, например. Рули. Так что вы либо
this.$el.html(this.template(data)); // template is a compiled Handlebars template
или
this.$el.html($('<div />').text('Whatever'); // using jQuery
В любом случае, $el.html
повторно вставки HTML к целевому элементу зрения.
- 1. Должен ли я использовать «развертывание firebase» после каждого изменения?
- 2. Backbonejs - Как слушать изменения в коллекции, которая является частью коллекции
- 3. Рендер парциальное после изменения выбора
- 4. Нужно ли вызывать `toLowerCase()` после каждого `typeof`?
- 5. Должен ли я вызывать dispose после каждого использования, хотя datatable хранится в кеше?
- 6. Должен ли я никогда не вызывать HostingEnvironment.UnregisterObject?
- 7. backbonejs output toggles после каждого обновления
- 8. Поиска backbonejs коллекции
- 9. BackboneJS: Сортировка коллекции связанных товаров
- 10. Вызывать метод после изменения вида просмотра
- 11. Как вызывать рендер для JSON
- 12. Должен ли я помещать блок try-finally после каждого Object.Create?
- 13. Должен ли я использовать Scale-Layer после каждого слоя BatchNorm?
- 14. SQL - Должен ли я убивать соединение после каждого запроса?
- 15. Должен ли я закрывать сокет после каждого успешного дескриптора сообщения?
- 16. Должен ли я запускать rake: db мигрировать после каждого эшафот?
- 17. Должен ли я появляться после каждого режима binmode?
- 18. Должен ли tearDown() запускаться после каждого теста?
- 19. Должен ли я вызвать SaveChanges один раз или после каждого изменения?
- 20. Должен ли я вызвать Entity Framework SaveChanges один или один раз после каждого изменения
- 21. Должен ли я явно вызывать System.exit() в приложении Webstart?
- 22. Должен ли я перерисовать графический интерфейс после изменения?
- 23. Должен ли я отбрасывать таблицы после изменения моделей django?
- 24. Должен ли я перерабатывать мои растровые изображения после изменения размера?
- 25. Добавление коллекции в ul в backbonejs
- 26. BackboneJS - Извлечение коллекции от модели
- 27. обновить JQuery DataTable после изменения коллекции Backbone
- 28. ReactJs, должен ли он использовать рендер
- 29. Должен ли я всегда вызывать listen() в родительском процессе?
- 30. Должен ли я всегда вызывать вектор clear() в конце функции?