Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Events 颤振-如何在BLoC初始化时调度事件_Events_Flutter_Initialization_Bloc - Fatal编程技术网

Events 颤振-如何在BLoC初始化时调度事件

Events 颤振-如何在BLoC初始化时调度事件,events,flutter,initialization,bloc,Events,Flutter,Initialization,Bloc,我知道如何轻松设置集团的初始状态。是否可以在创建新的bloc时分派事件 class MyBloc extends Bloc<MyEvent, MyState> { MyBloc() : this.dispatch(MyEvent()), // this line doesn't work super(); @override MyState get initialState => MyStateInitial(); @override S

我知道如何轻松设置集团的初始状态。是否可以在创建新的bloc时分派事件

class MyBloc extends Bloc<MyEvent, MyState> {
  MyBloc() :
    this.dispatch(MyEvent()), // this line doesn't work
    super();

  @override
  MyState get initialState => MyStateInitial();

  @override
  Stream<MyState> mapEventToState(MyEvent event) async* {
    if (event is MyEvent) {
      ... do some stuff here ...
      yield MyStateAfterMyEvent(someParameters, thatCantBe, setManually);
    }
  }
}

类MyBloc扩展了Bloc{
MyBloc():
this.dispatch(MyEvent()),//此行不起作用
超级();
@凌驾
MyState get initialState=>MyStateInitial();
@凌驾
流mapEventToState(MyEvent事件)异步*{
如果(事件为MyEvent){
…在这里做些事情。。。
在MyEvent后生成MyStateAfterMyEvent(某些参数,可以手动设置);
}
}
}

我知道有时将参数传递给bloc构造函数是可行的。在我的例子中,参数是从internet获取的,因此我需要更多的动态选项。实现这一点的方法是什么?

您可以使用级联运算符
和'
工厂
构造函数来实现。

factory MyBloc.dispatch(() => MyBloc()..dispatch(MyEvent());