只需要知道在您的哈希网址中使用一个主要斜杠是否有益。例如,
site.come/#/directore/file/
或
site.come/#directore/file/
我问这个是因为backbone.js不建议在他们的文档中使用第一个选项(我个人更喜欢第一个选项......),
http://backbonejs.org/#Router-extend
请注意,您要避免在路线中使用前导斜杠 定义
所以我想确定你want to avoid using a leading slash
背后的原因是什么。
答案 0 :(得分:1)
如果网站应该公开,我认为这两种方法都很糟糕,因为它会损害搜索引擎优化。
使用#!
作为Google instructs人群的Conisder,以便网站可以抓取
答案 1 :(得分:1)
如果您决定使用Backbone.history.start({pushState: true})
考虑这个设置:
Backbone.Router.extend({
routes: {
"/test": "test"
"test": "test2"
}
});
history
api仍然不是一成不变的,所以它如何处理并使用斜杠调用路由是不一致的 - 但是你应该期望history.pushState('/test')
调用路由test
。但是,现在如果您使用的是使用哈希回退的浏览器,它将调用路由/test/
。因此,可能最好完全避免第一次斜线,因为没有好的方法可以告诉你如何处理这两种情况:
app.navigate("/test")
这也是Backbone.js slash after hash in fallback - history pushState
的可能重复答案 2 :(得分:1)
我更喜欢第一个,因为这样可以保持网址更加干净。甚至AngularJS路由系统也更喜欢第一个。像:
site.com/#/directory/file
出于搜索引擎优化的目的,两者都没有任何意义。
是的,这是正确的,命中API在其URL构成系统中使用#!
。