我有以下问题: 我正在使用ng-admin来构建管理页面。有一个自定义页面添加到ng-admin界面。标准ng-admin页面由ng-admin路由,列表/编辑视图没有问题。 现在我想对自定义页面使用angular.js路由,因为我需要在url中使用参数的url路由。 如果我不在URL中使用任何参数,则路由确实有效。一旦我使用参数,自定义页面的路由确实有效,但是当我点击任何其他页面时,新页面将永远加载而不是打开。如果我使用没有参数的路由,则所有页面都正确加载。
这是有效的:
function routing($stateProvider, $urlRouterProvider){
// default route
$urlRouterProvider.otherwise('/custom');
$stateProvider.state('custom', {
parent: 'main',
url: '/custom',
template: customTemplate,
controller: 'CustomController'
});
}
这不起作用:
function routing($stateProvider, $urlRouterProvider){
// default route
$urlRouterProvider.otherwise('/custom');
$stateProvider.state('custom', {
parent: 'main',
url: '/custom?date',
template: customTemplate,
controller: 'CustomController'
});
}
我使用$ state.go函数来更改状态并路由页面:
function transition(){
var dates = $scope.startdate.getTime();
$state.go('custom', {date: dates}, {notify: false});
};
答案 0 :(得分:0)
我相信您可能需要在params
部分声明参数:
function routing($stateProvider, $urlRouterProvider){
// default route
$urlRouterProvider.otherwise('/custom');
$stateProvider.state('custom', {
parent: 'main',
url: '/custom?date',
params: { date: null },
template: customTemplate,
controller: 'CustomController'
});
}
有关详细信息,请参阅ui-router docs。