Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

如何进行全局刷新 #438

Open
Bedroome opened this issue Aug 19, 2019 · 7 comments
Open

如何进行全局刷新 #438

Bedroome opened this issue Aug 19, 2019 · 7 comments

Comments

@Bedroome
Copy link

Bedroome commented Aug 19, 2019

请问如果有这样的两个个场景
1.我有一个页面分别是用3个tab构成的3个页面, 假如这3个页面都需要登陆才能够使用, 是否需要登陆由后台返回的数据决定。
我分别点开了这3个页面, 然后不登陆返回, 显示的是请登录的缺省页, 这3个页面都使用了keepAlive,然后我在其中一个页面登陆后,其他2个页面如何能做到当我点击那个页面的时候重新获取数据并加载页面

2.还有就是比如我在这个页面操作完成之后, 其他的某些页面需要重新获取数据, 我如何能做到当用户回到那个页面(页面未被销毁)的时候再执行获取数据

@Bedroome Bedroome changed the title 全局的刷新 如何进行全局刷新 Aug 19, 2019
@zjuwjf
Copy link
Contributor

zjuwjf commented Sep 3, 2019

可能你描述的特别细节,我难以理解你的具体业务。
你提到的全局刷新,抽象来看是一个什么特性?是目前fish-redux所没有的么?

@Bedroome
Copy link
Author

Bedroome commented Sep 5, 2019

大概是我这个界面处于KeepAlive的状态.我在别的页面进行操作, 然后我发送一个广播.KeepAlive的页面会接收到然后进行刷新, 可是我并不想直接收到广播就刷新, 我想当回到那个KeepAlive页面的时候再进行刷新. 有没有什么方案

@zjuwjf
Copy link
Contributor

zjuwjf commented Sep 5, 2019

嗯,理解了。但是这个可能不是fish-redux解决的问题。

你说的刷新是业务逻辑的刷新,还是Widget的刷新?

@Bedroome
Copy link
Author

Bedroome commented Sep 5, 2019

应该也算是一种管理状态吧。我需要发送一条消息给KeepAlive页面, 是否能够延迟执行这个广播所要处理的事件。延迟到我重新回到那个页面的时候再执行

@wangtianming
Copy link

@Bedroome shouldUpdate + 生命周期?

@zjuwjf
Copy link
Contributor

zjuwjf commented Sep 13, 2019

应该也算是一种管理状态吧。我需要发送一条消息给KeepAlive页面, 是否能够延迟执行这个广播所要处理的事件。延迟到我重新回到那个页面的时候再执行

延迟似乎是一个业务属性的逻辑,我觉得应该由业务代码完成。

@VintLin
Copy link
Contributor

VintLin commented Dec 8, 2019

  1. 您的第一个需求似乎能通过将用户登录状态放在全局Store中,并在登录后通过Reducer刷新全局Store来解决。
  2. 您的第二个需求,我的想法是使用FishRedux的EffectMiddleware监听Page的Lifecycle.dispose,并通过EventBus传递事件,在返回页面中监听该事件即可触发获取数据的操作。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants