У меня есть следующая проблема: я использую 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});
};
Я считаю, что вам, возможно, придется объявлять параметры в разделе 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.