实现BlocProvider抖动的差异

时间:2020-03-24 02:42:24

标签: flutter dart stream widget bloc

为bloc参数提供对象和类有什么区别,例如:

BlocProvider<AuthBloc>(

bloc: AuthBloc(),

child: Child()

);

来自:

_authBloc = BlocProvider.of<AuthBloc>(context);


BlocProvider<AuthBloc>(

bloc: _authBloc,

child: Child()

);

谢谢:),我希望您对此有疑问可以帮助很多人。

1 个答案:

答案 0 :(得分:1)

情况1:

BlocProvider(

bloc: AuthBloc(),

child: Child()

);

在这种情况下,您将创建一个新的AuthBloc实例并将其传递到BlocProvider中。

情况2:

_authBloc = BlocProvider.of<AuthBloc>(context);


BlocProvider<AuthBloc>(

bloc: _authBloc,

child: Child()

);

在这种情况下,您不会创建任何新实例,而是使用BlocProvider.of<AuthBloc>(context);

从上述树中获取先前创建的实例。