我在传递一个不是URL中的参数的参数时遇到问题.
我在点击事件上基本上有以下内容
let stateParams = { id: event.info.id,info: event.info }; this.$state.go('home.showinfo',stateParams);
我已经对stateParams进行了双重检查,其中包含id和info对象.
然后我对状态进行了以下设置
.state('home.showinfo',{ url: 'info/info/:id',resolve: { info: function($stateParams){ return $stateParams.info; } },params: { info: null }
在我的控制器中,我正在检查$stateparams的值,我看到id(也是URL包含ID),但info对象为null.它始终为空.我只是想能够在控制器中访问它. “this.info”也是null.
我在resole中放了一个断点,info为null.
我试过删除上面的参数:{}但仍然没有.
我有什么想法我做错了吗?
解决方法
有
a working plunker
<a ui-sref="home.showinfo({id:1,info:'hi'})"> <a ui-sref="home.showinfo({id:2,info:'bye'})">
上面有一个州:
.state('home.showinfo',templateUrl: 'showinfo.tpl.html',params: { info: null } })
检查它here