今天做项目的时候遇到了这个问题,记录一下
在使用angular大于1.6.0的版本时,地址中的 “/” 会自动被解析 而且还会在URL地址中加入#! 导致路由不能正常的工作,像下面这个路由这样:
http://localhost:9000/#!/
针对此种情况有两种解决方式:
一、换版本,只要比1.6.0低就可以了;
二、在配置路由的时候加上此句:
$locationProvider.hashPrefix('');
这样在路由中便不会出现感叹号
详细如下:
angular
.module('ztewebsiteApp', [
'ngAnimate',
'ngAria',
'ngCookies',
'ngMessages',
'ngResource',
'ngRoute',
'ngSanitize',
'ngTouch'
])
.config(function ($routeProvider, $locationProvider) {
$locationProvider.hashPrefix('');
$routeProvider
.when('/', {
templateUrl: 'views/main.html',
controller: 'MainCtrl'
})
.otherwise({
redirectTo: '/'
});
});
欢迎分享本文,转载请保留出处:前端ABC » angular 路由URL中出现#!的解决方法
前端ABC