我试图删除我的URL中的#来清理它。我做了每个人要做的事:
demoApp.config(['$routeProvider', '$locationProvider',
function($routeProvider, $locationProvider) {
// Système de routage
$routeProvider
.when('/home', {
templateUrl: 'pages/home.html',
controller: 'homeCtrl'
})
.when('/contact/:msg?', {
templateUrl: 'pages/contact.html',
controller: 'contactCtrl'
})
.when('/todolist', {
templateUrl: 'pages/todolist.html',
controller: 'listeCtrl'
})
.when('/testfiltre', {
templateUrl: 'pages/testfiltre.html',
controller: 'demoFiltreCtrl'
})
.when('/testCreationfiltre', {
templateUrl: 'pages/testcreationfiltre.html',
controller: 'demoCreationFiltreCtrl'
})
.otherwise({
redirectTo: '/home'
});
$locationProvider.html5Mode(true);
}
]);HTML文件:
<head>
<meta charset="utf-8" />
<title>Demo App</title>
<link rel="stylesheet" href="web/css/style.css">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.2/angular.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.2/angular-route.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.4.2/angular-locale_fr-ca.min.js"></script>
<script src="js/script.js"></script>
<base href="/">
</head>当我这样做的时候,它会给我带来很多错误,而且我真的到处乱跑,没有找到解决办法。我的网址是因为某种原因变成这样的:
file:///C:/Users/......../index.html#%252525252525252525252Fhome.的
file:///C:/Users/......../index.html/home它会产生错误,例如:
错误:操作不安全。 错误:拒绝对受限URI的访问 错误:http://errors.angularjs.org/1.4.2/$compile/tpload?p0=pages%2Fhome.html&p1=undefined&p2=undefined:$compile:tpload未能加载模板:pages/HTTP..html (HTTP状态:未定义未定义) 错误:操作不安全。 错误:达到$rootScope:infdig 10 $digest()迭代。流产! 错误:操作不安全。
……
发布于 2016-01-08 20:32:08
这是一篇很好的文章,描述了如何从URL中删除#
http://www.codeproject.com/Tips/1063634/Removing-the-sharp-Sign-from-AngularJS-URLs-with-I
发布于 2016-01-08 20:29:24
我注意到的一件事是你原谅了otherwise声明。同样奇怪的是,您的视图试图用file协议加载。
作为建议:考虑使用ui-router而不是ng-route,因为它具有更好的功能、对嵌套视图的极大支持(您的视图树可以像您需要的那样更深)和命名视图,并且它没有ng-route那么容易出错。
https://stackoverflow.com/questions/34685296
复制相似问题