我正在使用flutter和redux实现登录屏幕,登录状态存储在redux存储中。
我想要的是登录后能够顺利导航到另一个屏幕,让我们将其称为主屏幕。强调“平稳”。
Login屏幕将调用redux-thunk操作,该操作将使用API检查登录。验证后,它将在redux存储中设置登录状态。我还存储该状态下已调用API的事实。呈现“登录”屏幕时,如果状态指示正在调用API,则会显示一个CircularProgressIndicator。
我已尝试在2个地方推动下一条路线。
在完成API调用并成功登录之后,在redux-thunk操作中。
在flutter redux的StoreConnector的onInit方法中。
当通过redux-thunk操作推入路线时,流程很好-但是,我可以看到Login屏幕在实际替换为之前短暂地从加载指示器更改为表单(因为状态已更改)。下一条路线。
如何避免屏幕闪烁?基本上,由于状态更改,路由必须覆盖重渲染。
在第二种方法中,它陷入无限循环。
正确的做法是什么?