Ответ 1
Я создал LayoutManager для Backbone.js, потому что я тоже хотел создавать сложные представления.
http://tbranyen.github.com/backbone.layoutmanager/
Сообщите мне, если вы найдете этот подход полезным.
Я читаю это:
http://codebrief.com/2012/01/the-top-10-javascript-mvc-frameworks-reviewed/
Я использую backbone.js. Мне это нравится, хотя для этого требуется слишком много шаблонов. Так или иначе.
Автор сообщения, похоже, имеет большое значение для UI-привязок и составленного представления.
Я думаю, что я знаю основное преимущество привязок ui, вы можете изменить небольшие части представления, поскольку модель изменяется без повторной визуализации всего представления. Я не обязательно вижу это. Если ваш взгляд огромен, возможно, вы должны сделать меньше просмотров? Я видел код knockoutjs, и он завалялся уродливым материалом для привязки данных. Как emberjs справляется с этим? Есть ли пример?
Я понятия не имею, что он подразумевает при составлении взглядов, может ли кто-нибудь разъяснить?
Композитные представления. Как и все разработчики программного обеспечения, мне нравится создавать модульный многоразовый код. По этой причине при программировании пользовательского интерфейса я бы чтобы иметь возможность составлять представления (предпочтительно на уровне шаблона). Это также должно влечь за собой потенциал для компонента с богатым представлением иерархия. Примером этого может быть многократно используемый виджет для разбивки на страницы.
Есть ли пример?
Спасибо
Edit:
Помогло ли это сделать что-то вроде скомпилированных представлений?
https://github.com/tbranyen/backbone.layoutmanager
Я создал LayoutManager для Backbone.js, потому что я тоже хотел создавать сложные представления.
http://tbranyen.github.com/backbone.layoutmanager/
Сообщите мне, если вы найдете этот подход полезным.
Представленные представления используются для разделения вида на небольшие блоки, которые могут быть повторно использованы или адаптированы к различным сценариям.
Например, в форме, где вы редактируете пользователя, вы можете создать представление для поля адреса и просто вызвать его с главной страницы/шаблона. В качестве примера автор также ссылается на разбивку на страницы, в этом случае вы можете создать модель, которая знает, как обрабатывать извлечение данных при переходе между страницами и просто применить их к таблице на вашей странице.
Что касается "уродливого" кода привязки данных, то магистральная сеть должна знать, как подключиться к существующей разметке и как ее модифицировать, когда происходит событие.
Возможно, этот пример поможет: http://coenraets.org/blog/2011/12/backbone-js-wine-cellar-tutorial-part-1-getting-started/
Традиционные веб-страницы монолитные. Пользователь вызывает страницу, а сервер создает страницу, и браузер ее отображает. Здесь автор ссылается на разбиение такого кода на множество представлений. Таким образом, ваша страница состоит из нескольких частей. И каждая часть получает визуализацию и обновление независимо. Или одно изменение модели может инициировать серию обновлений для некоторых или всех частей.
В основном это позволяет создавать приложения типа "рабочий стол" в Интернете. И вам не нужно прибегать к хакам iframe, чтобы это сделать.
Gmail и Google Reader являются хорошими примерами веб-приложений, построенных с использованием скомпилированных представлений.
Мне кажется, что автор говорит о серверном коде здесь. Создание системы многоразовых шаблонов страниц, которые генерируют страницы из общего набора виджетов, html-фрагментов и т.д.
Apache Tiles - это один из способов сделать это.