使用flutter_bloc在flutter状态更改期间触发事件是否是一种好习惯(或至少可能)?如:
if (state is SomeState) {
_bloc.add(Event())
}
在这种情况下,我的用例是触发模态,作为对某些状态变化的反应,但是每次我这样做(尝试使用 BlocListener 和 BlocBuilder)时,模态总是被触发两次,因为你必须关闭 2 个模态。
我必须这样做,因为我做了 2 个 api 调用,每个事件触发一个调用 PostEvent 和 GetEvent 比方说,我希望模态仅在第二个完成后打开。
PostEvent -> Request -> StateChange -> Builder -> add(GetEvent) -> Request -> StateChange -> Builder -> showModal()
我还想知道我是否应该以相同的方法进行两次调用,但尚未测试过。
在进行了一些挖掘之后,我发现即使只添加了一次事件,小部件也会以相同的状态重建 2 次(例如 GetFinished),因此显示了 2 个模态。
任何帮助,将不胜感激。
谢谢