Javascript MVC framework + jQuery Mobile

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

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

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

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

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

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

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

Есть ли удача с одной из MVC-фреймворков на основе привязки данных? Удачи с Backpack или Spine? Достаточно ли хорошо они работали с jQuery Mobile, чтобы вы их порекомендовали? Есть ли другие рекомендации?

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

10
задан Mirko Froehlich 25 February 2012 в 23:06
поделиться