angularjs实现Form表单提交信息登录,点击“登录”后利用state.go来跳转传递数据,跳转后如何接受数据?
//实现跳转的代码 $state.go('landing_page',{'phone':$scope.phone,‘validCode’:$scope.validCode});
这里的phone和validCode就是我需要传递的数据。
ps:表单提交页面跳转是用这种方式实现么?还是用location比较好呢?
1.这种方式传递数据是可以的,不过会有一些小问题,如果你进入跳转的那个landing_page状态页面的话,如果刷新这个页面的话,那么你随路由传递过来的参数(路由参数除外)就会没有了,这样子就比较尴尬;所以一个好的建议就是,在跳转路由之前将你需要的数据进行处理。 2.如果这些参数是路由参数的话,那么不会出现上述的问题,路由参数会一直保存在路由中。 3.如果你随路由传递的这些参数在跳转之后的页面也需要的话,那么就需要在进入这个页面之前重新获取一下,可以尝试使用ui-router插件的resolve方法将你需要的一些数据获取到,然后注入到相应的控制器中去。
landing_page
路由参数
ui-router
resolve
1.这种方式传递数据是可以的,不过会有一些小问题,如果你进入跳转的那个
landing_page
状态页面的话,如果刷新这个页面的话,那么你随路由传递过来的参数(路由参数除外)就会没有了,这样子就比较尴尬;所以一个好的建议就是,在跳转路由之前将你需要的数据进行处理。2.如果这些参数是
路由参数
的话,那么不会出现上述的问题,路由参数会一直保存在路由中。3.如果你随路由传递的这些参数在跳转之后的页面也需要的话,那么就需要在进入这个页面之前重新获取一下,可以尝试使用
ui-router
插件的resolve
方法将你需要的一些数据获取到,然后注入到相应的控制器中去。