去掉 #!来自angularjs中的url

时间:2017-06-25 15:20:35

标签: html angularjs

我想了解如何删除#!使用ng-route从angularjs中的url。 可以请某人帮助我完成我需要遵循的确切步骤,以便删除#!。

这是代码

的index.html

<head>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular-route.js"></script>

  <script src="a02.js"></script>

</head>

<body ng-app="testApp">
  Hello there
  <hr>
  <a href="#test">Click Me </a>
  <div ng-view></div>
</body>
</html>

a02.js

var app = angular.module("testApp", ['ngRoute']);

  app.config(["$routeProvider",function($routeProvider){
    $routeProvider.when('/test',{
        template:"<strong>It's routing template</strong>"
    })
}]);

我的要求是当点击我点击链接时应该显示

  

它的路由模板。

但是当浏览器加载index.html时,网址就会显示为

http://localhost:3000/index.html#!/

当我点击Click Me链接时,网址将显示为

http://localhost:3000/index.html#!/#test

我希望这个网址和链接在没有#!。

的情况下工作

1 个答案:

答案 0 :(得分:2)

在您的js路由器文件中,您需要添加:

$locationProvider.hashPrefix(''); 
$locationProvider.html5Mode(true);

并在索引html文件(head标签)中添加:

<base href="/">