2012-02-21 61 views

回答

0

我不認爲有一種方法來區分這些事件。 Backbone的歷史實現監視當前瀏覽器窗口的URL中的更改,並且無法區分URL的更改方式。您很可能需要推出自己的解決方案(例如,檢查歷史記錄中的條目,或者在用戶點擊時使用額外的處理程序)。

如果您想區分您的明確呼叫router.route您可以傳遞一個自定義字符串作爲第二個參數,這將觸發事件'route:yourNameHere',請參閱Backbone's documentation

0

您還可以設置頁面加載可變又名地方在那裏你初始化你的應用程序(比如你的路由器的initialize方法)

var Workspace = Backbone.Router.extend({ 
    initialize: function() { 
     var this.pageLoad = true; 
    ... 

,並將其設置爲false導航地方。你可以聽在朱利安的答案描述或只需添加一行代碼這樣的事件路由:

Workspace.pageLoad = false 

到您的路線功能。您也可以創建一箇中間人函數來處理設置變量,然後調用相應的路線。

相關問題