AngularJS"#!" 在网址上

A. *_*zzi 10 hash routing web angularjs

有人知道"#!" 手段.在网址上?

我一直工作直到那时出现,我的网址中总是有一个"#",并希望保持这种状态.目前路由不再工作,可能是因为这个网址更改.

它是商业项目的一部分,我不想改为html5Mode.

我试着用:

$locationProvider.hashPrefix("");
Run Code Online (Sandbox Code Playgroud)

即使以这种方式纠正URL,路由也存在问题

小智 9

多数民众赞成哈希爆炸.

要解决此问题:

    angular.module('yourApp', [])
    .config(['$locationProvider', function($locationProvider) {
        $locationProvider.hashPrefix('');
    }]);
Run Code Online (Sandbox Code Playgroud)

添加html5Mode甚至可以删除网址中的"#",但如果刷新页面,则会出现404错误.这可以通过配置您的服务器来解决.为此你可能想要查看漂亮的小教程:

  1. https://scotch.io/tutorials/pretty-urls-in-angularjs-removing-the-hashtag
  2. https://www.theodo.fr/blog/2017/01/pretty-url-in-angularjs-and-loopback-drop-the/

stackoverlow中的hashbang问题还有另一个答案:

做Twitter,Hash-Bang#等链接!网址