由于控制器之间不共享范围,如果希望在控制器之间传递参数,可能需要通过其他的方式实现,以下是当前我用到的两种在控制器之间传递参数的方法。
注:参考文章角控制器之间共享数据
可以写一个包含获?设置的服务,取参数/赋参数
.factory (paramService,函数(){ 返回{ 结果:[], getResult:函数(){ 返回this.result; }, setResult:函数(res) { 这一点。结果=res; } }; })
然后可以在controllerOne中赋值,在controllerTwo中取值
//赋值 范式(“一个”,函数(paramService) { paramService.setResult(一); })//取值 范式(“两个”,函数(paramService) { var参数=paramService.getResult (); })
第二种方法用于路由间传递参数,用途也比较广泛,使用场景比较多
//传参 .state(“一个”,{ url:“一个”, 控制器:“一个”, 模板:“one.html”, 参数:{ 名称:“约翰” } })//取参 范式(“一个”,函数(stateParams美元){ var=$ stateParams.name名称; })
其他方法可以使用一些类推的小技巧,比如使用localStorage来存/取参参,其他的方法,暂时没想到也没用到,有待后续补充。
好了,以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用角能带来一定的帮助,如果有疑问大家可以留言交流。