2016-12-10 121 views
2

我有一个问题角度JS,AngularJS是打破路由URL

当访问这样的:

domain.name/#/filme/view/Dilwale/524

它正在改变URL这样:

domain.name/#!/#%2Ffilme%2Fview%2FDilwale%2F524

可能是什么原因?

+2

如果您构建演示应用程序,它会更容易帮助您。至少放一些代码。 –

回答

3

按我的回答是:Why is there #! in the url of my angular app

它也可能是因为突破1.6.0的角度变化。 (如果您正在使用的角度1.6.0 :)

的changelog:https://github.com/angular/angular.js/blob/master/CHANGELOG.md

变化:https://github.com/angular/angular.js/commit/aa077e81129c740041438688dff2e8d20c3d7b52

重大更改

为$位置哈希爆炸的URL哈希前缀已经改变从 空串“”到爆炸“!”。如果您的应用程序不使用 HTML5模式,或者在不支持HTML5模式, 的浏览器上运行,并且您尚未指定自己的哈希前缀,则客户端URL 现在将包含“!”字首。例如,而不是 mydomain.com/#/a/b/c将成为mydomain /#!/ a/b/c。

+0

谢谢,这解决了我的问题。 – Coder

+0

网址的其余部分呢? – Coder

+0

2F是ascii for。你的链接(href)到那条路线是什么样的?难道它是'#/电影'吗? – vidriduch

1

这是因为编码为您的URL来完成:

domain.name/#/filme/view/Dilwale/524 

请看下面的截图 enter image description here

要验证使用此LINK

+0

是的,但我不编码它,我没有设置角度来编码它,为什么会发生/? – Coder

+0

你不会问角编码!但你的浏览器为你做。 – Aravind

+0

它为我做,但角度不适用于编码的网址:D – Coder