为什么/#!/出现在地址栏上?

时间:2016-12-30 17:54:13

标签: angularjs angular-ui-router

嗨,我一直在研究棱角1.5并使用这门课程

https://thinkster.io/angularjs-es6-tutorial

我克隆了回购以帮助我开始,在关注视频教程时,我注意到我的地址栏看起来像这样:

http://localhost:4000/#!/

而开发教程的开发人员在地址栏中有/#/。

为什么会这样?

我也得到了这些角度ui-router错误:

错误:转换取代了 错误:过渡被阻止了 错误:转换已中止
错误:转换失败

有人有想法吗?

1 个答案:

答案 0 :(得分:2)

/#!/是有角度的$ location服务。

在history.pushState之前 https://developer.mozilla.org/en-US/docs/Web/API/History_API

我们(网络社区)做了一个解决方法,我们跟踪window.location.hash,特别是twitter.com。现在所有浏览器都支持http://caniuse.com/#feat=history天。

所以我建议启用html5Mode来使用新的历史API,这将删除/#!/ https://docs.angularjs.org/guide/ $位置#hashbang和 - HTML5的模式