Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 在$state.go中使用可选参数_Angularjs_Angular Ui Router - Fatal编程技术网

Angularjs 在$state.go中使用可选参数

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

我有一个网站由AngularJS和ui路由器。我将两个州定义如下:

.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 })

是的,您应该在路线配置中使用
参数
,我还使用查询参数添加了答案