angular页面间传递数据详解

来源:互联网 发布:部落冲突地震数据 编辑:程序博客网 时间:2024/05/17 11:57

在angular中页面间传递数据的方式我只知道有两种,一种是通过广播。$emit用于向父级以上传递事件与数据,$broadcast用于向子级以下传递事件与数据。$on则用来接收事件与数据。另一种则是通过service服务来传递数据,这些数据都是单例的,也就是说如果在当前的控制器中改变某一值,下一个控制器用的就是已改变的值。这篇文章是记录下。不知道还有没其他什么方法也能页面间传递数据。
怎么说呢,我这边是先在factory里写个ajax请求。这里写图片描述
里面内容就是定义请求的格式这里写图片描述这里写图片描述
然后在service里注入factory服务并且调用里面的get方法,如果要用到post请求那就写post这里写图片描述
在service中使用$q延迟方法进行异步操作。然后在路由中写个方法,并把这个resolve服务注入进去并调用服务里reqData方法。这里写图片描述
然后在需要用到的路由中定义个resolve属性(关于resolve属性使用在之前的文章中有说明)。最后再把蓝色框的’outResolve’注入到outingCtrl控制器中,注入到控制器中的outResolve的值就是已经成功取到的数据。这里控制器内容就不贴图了。
感觉思路一下就清晰了许多。不过这可能不算是页面间传递数据。只能算是简便请求?或者说数据预加载更合适些。 如有写错,还望指出,不胜感激!!!

0 0
原创粉丝点击