Я разрабатываю приложение с Backbone.js и JQM, но у меня проблемы с запущенными методами.
Это мой код:Backbone.js и JQuery Mobile Router
class HomeView extends Backbone.View
constructor: ->
super
@el = app.activePage()
console.log(@el)
@template = _.template('''
<div>
<ul data-role="listview" data-theme="c" data-filter="true">
<% venues.each(function(venue){ %>
<li><a href="#home"><%= venue.getAbstract() %></a></li>
<% }); %>
</ul>
</div>
''')
@render()
render: =>
@el.find('.ui-content').html(@template({venues : Venues}))
app.reapplyStyles(@el)
class HomeController extends Backbone.Controller
routes :
"#venues-:cid" : "show"
"#home" : "home"
constructor: ->
super
@_views = {}
home : ->
console.log("home")
@_views['home'] ||= new HomeView
show: (cid) ->
console.log("show")
@_views["venues-#{cid}"] ||= new ShowVenueView { model : Venues.getByCid(cid) }
Настройка маршрута к #home, не дозвонились.
Однако если установить его только дома, и отключить оба Аякса и hashListening как этот
$.mobile.ajaxEnabled = false;
$.mobile.hashListeningEnabled = false;
приносит мне 404 страница не найдена.
В чем проблема?
Из того, что я читал, есть некоторые отличия в том, как JQM и Backbone работают с тэгами хэша. Вы пробовали это: https://github.com/azicchetti/jquerymobile-router – PhillipKregg
Я испытал много боли, прежде чем осознать, какой ужасный выбор jQuery mobile предназначен для разработки мобильных приложений с оптимизированной для мобильных устройств. BackboneJS может обрабатывать все мобильные устройства jQuery, с более легким фреймворком и гораздо менее навязчивым кодом. Вот хорошее стартовое место: http://trigger.io/cross-platform-application-development-blog/2012/03/02/how-to-build-fast-html5-mobile-apps-using-backbone-js- zepto-js-and-trigger-io/ – eschwartz