为了账号安全,请及时绑定邮箱和手机立即绑定

Angular 如何做全局刷新?

Angular 如何做全局刷新?

慕盖茨4494581 2019-01-05 21:23:44
现在有一些需求是需要做一个全局的刷新功能,当然刷新是针对当前路由组件的数据更新了,之前想通过rxjs直接在当前路由的组件中订阅事件就可,但是发现一个问题是我无法订阅到这个事件。我当前是使用在最外层layout布局上需要使用这个功能点。box-     -header         - refresh(当前功能)    -body         - router             - components     -footer    与之对应的加载方式 {    path:'',     component:layoutComponent,     children:[         {             path:'',redirectTo:'/xxx',         },         {            path:'xxx',             loadChildren:'xxx/xxx.module#xxxModule'         }     ] }当然我是访问到这个xxx路径中,但是需要刷新是在layoutComponent里的headerComponent(头部)进行的动作,这个在用全局rxjs的subject发射、订阅事件中没有截取到任何动作,这个请教大神该怎么处理。
查看完整描述

1 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

angular6以上可以声明Singleton service,这种service只会被实例化一次。angular6一下的话可以在appmodule中注入一个service用作component之间的通信,这个service不能再在其它module中注入了,否则会被多次实例化。多次实例化后会有多个subject,无法达到component间通信的目的。

查看完整回答
反对 回复 2019-01-05
  • 1 回答
  • 0 关注
  • 368 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信