我最近开始开发一个闪电灯,使该地区变得更新。 因此,我一直在研究如何使用布洛茨。 然而,当我反省我的布洛茨和我的服务时,一切都会奏效。 在我使用<代码>之前, 供应商代码>。 我有两部法典。 第一:
return RepositoryProvider<AuthenticationService>(
create: (context) {
return FakeAuthenticationService();
},
// Injects the Authentication BLoC
child: BlocProvider<AuthenticationBloc>(
create: (context) {
final authService = RepositoryProvider.of<AuthenticationService>(context);
return AuthenticationBloc(authService)..add(AppLoaded());
},
child: MaterialApp(
title: Authentication Demo ,
theme: appTheme(),
home: BlocBuilder<AuthenticationBloc, AuthenticationState>(
builder: (context, state) {
if (state is AuthenticationAuthenticated) {
// show home page
return HomePage(
user: state.user,
);
}
// otherwise show login page
return StartupPage();
},
),
)
),
);
该法典实行罚款,但第2版则完全相同,但使用<代码>Multi RepositoryProvider的除外。 第二部法典:
return MultiRepositoryProvider(
providers: [
RepositoryProvider<AuthenticationService>(
create: (context) => FakeAuthenticationService(),
child: BlocProvider<AuthenticationBloc>(
create: (context) {
final authService = RepositoryProvider.of<AuthenticationService>(context);
return AuthenticationBloc(authService)..add(AppLoaded());
},
),
)
],
child: MaterialApp(
title: Authentication Demo ,
theme: appTheme(),
home: BlocBuilder<AuthenticationBloc, AuthenticationState>(
builder: (context, state) {
if (state is AuthenticationAuthenticated) {
// show home page
return HomePage(
user: state.user,
);
}
// otherwise show login page
return StartupPage();
},
),
),
);
现在,第二部法典给我留下了以下错误:BlocProvider.of() ,其背景并不包含AthenticationBloc类的缩略语。
是否有任何人知道第二部法典为什么不奏效?