从角度js中的网址中删除#符号

时间:2017-01-03 12:10:09

标签: javascript angularjs routing

我正面临着“#”符号的问题。我想从我的angular js网站的URL中删除#。我尝试在“提供的链接”的帮助下删除它,但它不起作用,该网站没有显示任何内容。请让我知道如何使它成为可能。如何从URL中删除#符号。

这是我的route.js代码: -

var app = angular.module("myApp", ["ngRoute"]);
app.config(function($routeProvider) {
    $routeProvider
    .when("/", {
        templateUrl: 'Templates/home.html',
    })
    .when("/first", {
        templateUrl: 'Templates/first.html',
    })
    .when("/second", {
        templateUrl: 'Templates/second.html',
    })
    .when("/third", {
        templateUrl: 'Templates/third.html',
    })
    .when("/admin", {
        templateUrl: 'Templates/admin.html',
    })
    .otherwise({
        redirectTo: '/'
    });

3 个答案:

答案 0 :(得分:0)

您可以使用$locationProvider

 var app = angular.module("myApp", ["ngRoute"]);
    app.config(function($routeProvider, $locationProvider) {
        $routeProvider
        .when("/", {
            templateUrl: 'Templates/home.html',
        })
        .when("/first", {
            templateUrl: 'Templates/first.html',
        })
        .when("/second", {
            templateUrl: 'Templates/second.html',
        })
        .when("/third", {
            templateUrl: 'Templates/third.html',
        })
        .when("/admin", {
            templateUrl: 'Templates/admin.html',
        })
        .otherwise({
            redirectTo: '/'
        });
             $locationProvider.html5Mode({
          enabled: true,
          requireBase: false
        });

答案 1 :(得分:0)

使用HTML5历史记录API

$locationProvider.html5Mode(true);

或者,您可以在index.html中使用基本代码(我想这是您的目标网页)

<head>
  <base href="/">
</head>

更多详情,请访问:https://scotch.io/tutorials/pretty-urls-in-angularjs-removing-the-hashtag

答案 2 :(得分:0)

在你的app.js

中试试这个
    var app = angular.module("myApp", ["ngRoute"]);
app.config('$routerProvider', '$locationProvider',function($routeProvider,$locationProvider) {

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

    $routeProvider
    .when("/", {
        templateUrl: 'Templates/home.html',
    })
    .when("/first", {
        templateUrl: 'Templates/first.html',
    })
    .when("/second", {
        templateUrl: 'Templates/second.html',
    })
    .when("/third", {
        templateUrl: 'Templates/third.html',
    })
    .when("/admin", {
        templateUrl: 'Templates/admin.html',
    })
    .otherwise({
        redirectTo: '/'
    });

并在head.html

中的index.html文件中添加此基本标记
<head>
   <base href="/">
</head>