Angularjs 在$state.go中使用可选参数
我有一个网站由AngularJS和ui路由器。我将两个州定义如下:Angularjs 在$state.go中使用可选参数,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我有一个网站由AngularJS和ui路由器。我将两个州定义如下: .state('home', { url: '/home/{id}', ... }) .state('edit', { url: '/edit/{id}?connected&ifIni&redirectToRun', ... 在控制器中,我可以使用$state.go('home',{id:id})导航到主页页面 我的问题是,我是否可以使用例如,$state
.state('home', {
url: '/home/{id}',
...
})
.state('edit', {
url: '/edit/{id}?connected&ifIni&redirectToRun',
...
在控制器中,我可以使用$state.go('home',{id:id})
导航到主页
页面
我的问题是,我是否可以使用例如,
$state.go('edit',{id:id,connected:connected,ifIni:ifIni,redirectorun:redirectorun})
导航到编辑
页面。您可以通过两种不同的方式进行操作,一种是在routeConfiguration
中添加params
,另一种是将as查询参数添加到URL
添加参数:
路由配置:
$stateProvider.state('edit', {
templateUrl:'edit.html',
controller:'editController',
params: {
'id': ''
'referer': '',
'connected': '',
'ifIni': '',
'redirectToRun': ''
}
});
$stateProvider.state('edit', {
url: '/edit/{id}?connected&ifIni&redirectToRun',
templateUrl:'edit.html',
controller:'editController'
});
重定向:
$state.go('edit', { id: id, connected: connected, ifIni: ifIni, redirectToRun: redirectToRun })
$state.go('edit', { id: id, connected: connected, ifIni: ifIni, redirectToRun: redirectToRun })
如果要使用查询参数:
路由配置:
$stateProvider.state('edit', {
templateUrl:'edit.html',
controller:'editController',
params: {
'id': ''
'referer': '',
'connected': '',
'ifIni': '',
'redirectToRun': ''
}
});
$stateProvider.state('edit', {
url: '/edit/{id}?connected&ifIni&redirectToRun',
templateUrl:'edit.html',
controller:'editController'
});
重定向:
$state.go('edit', { id: id, connected: connected, ifIni: ifIni, redirectToRun: redirectToRun })
$state.go('edit', { id: id, connected: connected, ifIni: ifIni, redirectToRun: redirectToRun })
是的,您应该在路线配置中使用参数
,我还使用查询参数添加了答案