2015-12-06 73 views
0

我想在我的网址中使用哈希。当我使用下面的代码,网址去卡丁车/:NID但不是#卡丁车/:NID,因为我想要它。我的代码中没有启用pushState:true,所以不应该是问题。骨干历史浏览不保留哈希在网址

Backbone.history.navigate('#kart'+“/”+ this.model.get(“nid”),{trigger:true});

当我从函数中删除通配符时,url会保持哈希到“#kart”。

为什么通配符搞砸了?

感谢任何帮助!

+0

多年来一直没有与骨干工作,但你有没有考虑明确设置pushstate为false? – pushplaybang

+0

是啊试过了,没有工作。 – Stinis87

回答

0

想到几件事情。确保你没有明确地在你的代码中设置{hashChange: false}

如果您查看documentationnavigate,您会注意到它们没有明确指定散列。所以,试试这个,而不是

Backbone.history.navigate("kart/" + this.model.get("nid"), { trigger: true});

+0

不幸的是没有任何区别..但问题不是导航功能spesific。如果我在#地址栏中写入#kart/10并按回车键,它会自动转到卡丁车/ 10。我能以某种方式迫使它去#卡丁车/ 10?虽然它激发了正确的路由功能,但我仍然希望它保留哈希,因为如果我再次刷新一次url时没有哈希,它不会调用正确的路由 – Stinis87

0

感谢您的帮助家伙!我发现罪魁祸首是jQuery的移动