在我的应用中,我已经尝试按照我已经看过的所有博客帖子正确设置此内容,但我无法在/
网址上加载该应用。我用自己的角度生成器构建了应用程序,因此它使用grunt来启动连接服务器。但是,由于尝试添加localhost:9000
并将html5location设置为true,因此转到$locationProvider
不再显示该应用。
angular.module('bidrAdminApp', ['sky','ui.router','ngSanitize'])
.config(function ($stateProvider,$urlRouterProvider,$locationProvider) {
$stateProvider
.state('Home',{
url: '',
templateUrl: 'views/index.html',
controller: 'ApplicationCtrl'
})
.state('Home.Events', {
url: '/events',
templateUrl: 'views/events/index.html',
controller: 'EventsCtrl'
})
.state('Home.Event',{
url: '/events/{eventId}',
templateUrl: 'views/events/event/index.html',
controller: 'EventCtrl'
})
.state('Home.Event.Overview',{
parent: 'Home.Event',
url: '/overview',
templateUrl: 'views/events/event/overview.html',
})
.state('Home.Event.Settings',{
parent: 'Home.Event',
url: '/',
templateUrl: 'views/events/event/settings.html',
});
$urlRouterProvider.otherwise('');
$locationProvider.html5Mode(true);
});
我的基础index.html文件中也有<base href="/" />
。
如果我将Home
状态更改为url: '/admin'
,则可以转到/admin
,但这不是预期的结果。不确定我是否错过了配置。
答案 0 :(得分:1)
更改此行:
$urlRouterProvider.otherwise('');
到这一行:
$urlRouterProvider.otherwise('/');