AngularJS 1.1.5 - 自动向URL添加哈希标记

Kev*_*eal 17 javascript url hashtag angularjs

有谁知道为什么版本1.1.5会自动为你的网址添加一个标签,以及如何关闭它?IMO这看起来很难看.只要您的网址没有以正斜杠结尾,就会发生这种情况.(我没有使用路线或类似的东西).

所以这:

http://my.website.com/about
Run Code Online (Sandbox Code Playgroud)

http://my.website.com/about#/about
Run Code Online (Sandbox Code Playgroud)

还有这个:

http://my.website.com/about.html
Run Code Online (Sandbox Code Playgroud)

变为:

http://my.website.com/about.html#/about.html
Run Code Online (Sandbox Code Playgroud)

但是这个:

http://my.website.com/about/
Run Code Online (Sandbox Code Playgroud)

没有这个问题.

Eni*_*aRM 25

我前几天遇到过这个问题.我通过启用HTML5模式解决了这个问题$locationProvider.看到$ location的文档 - HTML5模式 更新了$ location的链接 - HTML5模式.

它看起来应该类似于:

.config(['$locationProvider', function($locationProvider){
    $locationProvider.html5Mode(true).hashPrefix('!');
}]);
Run Code Online (Sandbox Code Playgroud)

  • 你救了我的命.他们会拿我的拇指! (4认同)
  • 这确实引入了一个新问题,即进入另一个页面的常规锚点变为历史推送链接,页面无处可去.然而,这可以通过使你的链接`target ="_ self"`来解决.做一些像'$('[href]').attr('target','_ self')`修复了这个问题.如果你可以在答案中添加一些内容,我会成为你最好的朋友. (4认同)
  • 哈哈.嗯,我很高兴你可以保持你的拇指另一天.使空格键更容易.Altho,我的左手拇指在打字时几乎没用.所以,如果他们将来要求一个,那就让他们抓住那个拇指:) (2认同)