2012-02-01 39 views
1

我正在做一個Node.js/Backbone.js應用程序,並想知道我是否正確使用pushState。Backbone.js中的pushState是否正確?

我的應用程序開始於http://localhost:8888/。我希望Backbone的路由器能夠選擇它並在索引處做一些事情。例如,在我的應用中,用戶上傳文件,然後Node.js將用戶重定向到http://localhost:8888/blah/。在這一點上,我希望Backbone的路由器選擇這個URL並做一些事情。

起初,Backbone沒有選擇除/以外的任何東西。我意識到Backbone當然會響應/#等等。因此,我在啓動時將BackState的歷史記錄設置爲pushState:true,現在它似乎能夠在用戶說出/或Node.js重定向時執行所需的不同操作他們去/ blah /。

是嗎?如果有效,保留它?

我基本上想要根據用戶在哪個頁面上使用不同的JavaScript解僱。我曾經通過尋找一個對特定頁面唯一的元素,然後啓動所需的代碼來使用jQuery來做到這一點。但這很骯髒。這似乎與Backbone的路由器一起工作,只要我在歷史中使用pushState:true ...但是,是嗎?

非常感謝,詹姆斯

回答

0

骨幹需要調用pushState的:如果你想使用它(選入的基礎上)。如果瀏覽器不支持pushState,它將自動回退到使用URL中的#。

關於路由器的描述,這聽起來是正確的。請記住,沒有看到代碼,很難完全知道。

最後,您可以讓Backbone在'/'上運行路線而沒有任何問題。