我的网址:eDemo / admin / test / list /#/ list
我想:eDemo / admin / test / list
JS:
var serviceBase ="http://admin-pc/eDemo/admin/test/";
function config($routeProvider, $locationProvider) {
$routeProvider
.when('/add', {
controller: 'addController',
templateUrl: serviceBase + 'add',
controllerAs: 'vm',
})
.when('/edit', {
controller: 'editController',
templateUrl: serviceBase + 'edit',
controllerAs: 'vm',
})
.otherwise({ redirectTo : 'list' });
}
HTML:
<div class='ng-view'></div>
答案 0 :(得分:2)
您只需在路由提供程序配置中添加Aclass
即可。
确保将config函数上的参数$ locationProvider作为参数传递。
这里是我们的示例js代码:
html5Mode(true)
您的HTML应如下所示:
var serviceBase ="http://admin-pc/eDemo/admin/test/";
app.config(['$routeProvider','$locationProvider',
function ($routeProvider,$locationProvider) {
$routeProvider
.when('/add', {
controller: 'addController',
templateUrl: serviceBase + 'add',
controllerAs: 'vm',
})
.when('/edit', {
controller: 'editController',
templateUrl: serviceBase + 'edit',
controllerAs: 'vm',
})
.otherwise({ redirectTo : 'list' });
$locationProvider.html5Mode(true);
}
另请注意,永远不要在任何网址中传递<div class='ng-view'>
<base href="<?=url('/').'/'?>">
</div>
,例如重定向,您通过AJAX或任何地方提交表单。
答案 1 :(得分:1)
在路线使用结束时:
$locationProvider.html5Mode(true);
这应该是:
var serviceBase ="http://admin-pc/eDemo/admin/test/";
function config($routeProvider, $locationProvider) {
$routeProvider
.when('/add', {
controller: 'addController',
templateUrl: serviceBase + 'add',
controllerAs: 'vm',
})
.when('/edit', {
controller: 'editController',
templateUrl: serviceBase + 'edit',
controllerAs: 'vm',
})
$locationProvider.html5Mode(true);
}
在视图文件中:
<head>
<meta charset="utf-8">
<base href="/">
</head>
答案 2 :(得分:1)
您可以像这样使用$ locationProvider
{{1}}