Где Backbone.js вписывается в веб-приложение - PullRequest
2 голосов
/ 16 июня 2011

Я создаю веб-приложение для списка покупок, в котором пользователь может хранить несколько продуктов и управлять ими, используя списки и теги. Мое приложение не является одностраничным веб-приложением, поэтому мне интересно, стоит ли мне использовать приложение для структурирования кода, такое как Backbone.js?

Рассмотрим новую аналогию с Twitter. Я хочу обработать удаление твита, добавить в избранное твит, ретвитнуть, используя вызовы ajax / rest + манипуляция dom, но обрабатывать изменения отображения, такие как временная шкала, упоминания и т. Д., Используя обычный запрос / ответ http - полный рендеринг страницы.

  • В этом случае, как я буду использовать часть Моделей, Коллекций Backbone? Когда страница загружается, нет данных для моделей, коллекций ... страница отображается с использованием php + html-кодирования.
  • Достаточно ли использовать только «Вид» для моих нужд, так как мне нужно обрабатывать множество изменений состояния элемента? Как насчет запросов ajax / rest.

1 Ответ

2 голосов
/ 16 июня 2011

Полагаю, легко стать жертвой желания использовать Backbone в каждом проекте (это довольно мило), но в итоге слой Model / Collection - это настоящая сила IMO. За исключением нескольких деталей, слой представления не делает намного больше, чем делегирование событий, которое также может быть достигнуто с помощью «простого» jQuery.

Сказав это, возможно, имеет смысл использовать слой Модель / Коллекция Backbone и в вашем случае: просто напечатайте данные, используемые в вашем представлении, в виде JSON в заголовке и инициализируйте вашу Коллекцию с ним или даже проанализируйте представление. - Хребет помогает вам обоим.

Я использую следующее эмпирическое правило: «Если вы обнаружите, что добавляете к более длинному и длинному списку отдельных вызовов AJAX, заключенных в обработчики событий, для многих различных элементов на вашей странице во время разработки, Backbone может быть ответом». (Если ваша реализация на стороне сервера RESTful.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...