Подтвердить что ты не робот

Как использовать JQuery Mobile и Backbone JS вместе в одном приложении?

Мне нравится использовать Backbone JS для проекта iPad HTML5... Но я быстро столкнулся с проблемой необходимости перехода iPad-ish, элементов формы и т.д. После осмотра кажется, что jQuery Mobile является наиболее установлено. Мы все равно используем jQuery.

Но одно, что я быстро натолкнулся на хэш-события/ajax, из двух библиотек быстро не сработало. Поскольку jQuery Mobile заботится о загрузке страниц и выполнении переходов и т.д., Это не позволяло моим маршрутам Backbone Controller работать так, как они делали раньше. Казалось, что эти два на самом деле не совместимы?

Однако после некоторой работы у меня есть обходное решение... Используя загрузку событий на странице jQuery Mobile, вы можете увидеть активную страницу, а затем запустить правильный макет, который идет с этой страницей. В основном полностью устраняются с помощью хеш-прослушивания/маршрутов/контроллера Backbone.

Но это все еще не кажется правильным? Как Backbone JS и jQuery Mobile работают вместе? Как мне сделать это правильно, продвигаясь вперед?

4b9b3361

Ответ 1

Я думаю, что нашел решение, когда задал тот же вопрос.

Отключить контроллер изменения хэша в мобильном пользовательском интерфейсе JQuery и заменить на backbone.js

Кажется, есть опция отключить изменение хеша JQuery, прослушивая недавнюю проверку.

https://github.com/jquery/jquery-mobile/commit/3162428558efd9960739ef8f00a7ead0dbf6d3ec

Я еще не пробовал. Если это работает, сообщите нам.

Брэд

Ответ 2

Похоже, что команда JQuery Mobile приняла сознательное решение не поддерживать типы динамических приложений с объектами Backbone.js. Из примечания о выпуске alpha 4:

После выхода 1.0 проект будет фокусируясь на... динамических приложениях, расширенный набор виджета и... A ведется более подробная дорожная карта и хорошо поделитесь им, когда мы приблизимся к нашему 1.0.

Другим доказательством этого является удаление опции autoInitialize по мере перехода от альфа-3 к альфа-4: issue 1391

Итак, теперь нам нужны обходные пути. Альтернативный ответ заключается в том, чтобы помочь исправить выдающиеся ошибки JQM и приблизить его ближе к 1.0, чтобы мы могли использовать динамические функции приложения в JQM ASAP.

Ответ 3

Я предпочитаю нечто более интегрированное w/jquery mobile, поэтому я обычно заменяю базовый маршрутизатор следующим: github.com/azicchetti/jquerymobile-router. прекрасно работает