1
我想處理路由器文件中的所有頁面路由/轉換,然後從其他功能引用視圖文件中的這些功能。我嘗試了幾種方法,但無法從視圖中訪問任何路由器功能。我得到的錯誤是AppRouter未定義。Backbone.js和jQuery Mobile - 從視圖訪問路由器功能
**Code snippet from router.js:**
...
var AppRouter = Backbone.Router.extend({
routes: {
'': 'showDefault',
'index': 'showDefault',
'cart': 'showCart',
'*actions': 'defaultAction'
},
showCart: function(actions) {
console.log('show cart called');
this.changePage(cartView);
},
changePage: function(page) {
$('body').append($(page.el));
$.mobile.changePage($(page.el), { changeHash: true, transition: 'slide' });
}
...
**Code snippet from default page view js**
...
events: {
'click #showCart': 'cartPage',
},
cartPage: function(action) {
$.AppRouter.showCart;
},
...
'$ .AppRouter',就是這個問題。 – 2012-08-02 23:46:27
爲什麼不使用合適的href來激發路由器上的功能,例如'購物車'?如果你想在視圖之間進行交談,使用你自己的Backbone.Events實例和訂閱/發佈設計很好。對不起,如果我誤解了你想要達到的目標。 – 2012-08-03 00:08:10