我正在尝试从我的网址#中删除,但是当我在我的HTML上添加$locationProvider.html5Mode(true);
以及我的app.js和<base href='/'>
时,我收到AngularJS的错误:
未捕捉错误:[$ injector:modulerr] http://errors.angularjs.org/1.5.0/ $ injector / modulerr?p0 = AppDj&amp; p1 = TypeError%... oogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.5.0%2Fangular.min.js %3A20%3A69)
var AppDj = angular.module('AppDj', ['ngRoute']);
AppDj.config(['$routeProvider', function($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/home.html',
controller: 'mainCrtl'
})
.when('/login', {
templateUrl: 'views/login.html'
})
.when('/register', {
templateUrl: 'views/register.html'
})
.otherwise({
redirectTo: '/'
})
$locationProvider.html5Mode(true);
}]);
AppDj.controller('mainCrtl', function ($scope){
});
答案 0 :(得分:3)
抛出错误是因为Angular正在尝试注入由于某种原因无法找到的模块。很可能这与<script src="path/to/angular-route.js">
无关。确保在页面中包含路由提供程序的脚本。
AppDj.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider)
编辑:实际上,您还没有包含位置提供商,请参阅:
{{1}}
答案 1 :(得分:0)
您尚未包含位置提供商,请参阅:
AppDj.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider)
如果您不需要基本标记
,也请执行以下操作$locationProvider.html5Mode({
enabled: true,
requireBase: false
});