angularjs – 如何发送和检索参数使用$state.go toParams和$stateParams?

前端之家收集整理的这篇文章主要介绍了angularjs – 如何发送和检索参数使用$state.go toParams和$stateParams?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用AngularJS v1.2.0-rc.2与ui-router v0.2.0。我想传递referrer状态到另一个状态,所以我使用$ state.go的toParams像这样:
$state.go('toState',{referer: $state.current.name});

根据docs,这应该填充toState控制器上的$ stateParams,但它是未定义的。我缺少什么?

我创建了一个plunk来演示:

http://plnkr.co/edit/ywEcG1

如果要传递非网址状态,则在设置状态时不能使用网址。我发现 the answer在公关,并做一些猴子周围更好地了解。
$stateProvider.state('toState',{
  templateUrl:'wokka.html',controller:'stateController',params: {
    'referer': 'some default','param2': 'some default','etc': 'some default'
  }
});

然后你可以导航到它像这样:

$state.go('toState',{ 'referer':'jimbob','param2':37,'etc':'bluebell' });

要么:

var result = { referer:'jimbob',param2:37,etc:'bluebell' };
$state.go('toState',result);

在HTML中这样:

<a ui-sref="toState(thingy)" class="list-group-item" ng-repeat="thingy in thingies">{{ thingy.referer }}</a>

这个使用案例在文档中完全揭露,但我认为这是一个强大的手段转换状态,而不使用URL。

猜你在找的Angularjs相关文章