Javascript MVC framework + jQuery Mobile

Я создаю (довольно простое) веб-приложение, которое в конечном итоге будет использоваться в равной степени на настольных и мобильных устройствах. Я использую Rails на бэкэнд, но фактическое приложение будет создано как одностраничное приложение, поэтому Rails просто будет обслуживать исходные интерфейсные активы и действовать как бэкэнд REST.

Я хотел бы использовать jQuery Mobile для мобильного оптимизированного UX, включая просмотр списка, сенсорный ввод (например, проведите по экрану, чтобы отредактировать элемент) и т.д. (Обратите внимание, что я рассмотрел только использование инфраструктуры пользовательского интерфейса, например, Twitter Bootstrap или Foundation, но я бы сильно выиграл от более глубокого мобильного оптимизированного UX, который поддерживает jQuery Mobile.)

Я также хотел бы использовать структуру Javascript MVC, чтобы лучше структурировать код Javascript. Я играл с несколькими фреймворками, но не использовал ни одного из них в глубину и все еще обсуждаю окончательный выбор.

Мой главный вопрос: какая из этих сред MVV (или MVVM) доказала свою эффективность в сочетании с jQuery Mobile.

Мобильный в сторону, мое сильное предпочтение было бы основанной на данных основанной структурой, такой как Knockout, Ember, Angular или Batman (фактически, на основе моих первоначальных экспериментов, мне очень нравится Batman), который автоматически обновляет интерфейс при изменении уровня модели. Однако я мог видеть, что это противоречит jQuery Mobile, который также вносит существенные изменения в DOM, также хочет владеть хешем местоположения и т.д.

Альтернативой может быть использование одной из структур нижнего уровня, таких как Backpack или Spine. Я предполагаю, что уровень маршрутизации все равно вызовет конфликты, но я мог бы хотя бы использовать слой модели, контроллера и представления (и особенно упорство REST).

Или, возможно, существует гибридный подход, в котором структура MVC, привязанная к привязке к данным, используется для всего в настольной версии, а слой вида каким-то образом заменен для jQuery Mobile в мобильной версии, все еще используя модели и уровни контроллера

Любая удача с одной из основанных на привязке данных структур MVC? Любая удача в рюкзаке или спине? Кто-нибудь из них достаточно хорошо работает с jQuery Mobile, который вы бы порекомендовали? Любые другие рекомендации?

Я понимаю, что этот вопрос несколько открыт, без единого правильного ответа, но я считаю, что это все еще является подходящим вопросом для Stackoverflow.

Ответ 1

так как у вас нет ответа после столь долгого времени, я могу только внести свой вклад в мой голос за две рамки

Backbone.js является классическим, сильным сообществом

Однако мой любимый Эмбер с точки зрения desgin. Одна из его целей Ember.js состоит в том, чтобы сделать тривиальным интегрировать инструменты, которые вы уже используете, и вы увидите функции jquery, упомянутые в некоторых примерах своей документации.

Я не уверен в jQuery Mobile, я использовал в основном с обычным jQuery, но пока выгляжу хорошо

Имейте в виду, что Ember приносит в жертву немного производительности, если это обеспечивает лучшую абстракцию. Я обычно одобряю это.

Ответ 2

Если вы касаетесь производительности, я предлагаю вам перейти с Backbone, поскольку это не полная структура фрейма, что означает, что она может быть довольно быстрой по сравнению с другой полнофункциональной инфраструктурой