【发布时间】:2020-12-03 10:27:45
【问题描述】:
当我从该页面 (shoe_box_page.dart) 导航到另一个页面并且该页面 (shoe_box_page.dart) 中的内容尚未完全加载时,出现上述异常。
class ShoeBoxPage extends StatefulWidget {
@override
_ShoeBoxPageState createState() => _ShoeBoxPageState();
}
class _ShoeBoxPageState extends State<ShoeBoxPage> {
final _scrollController = ScrollController();
@override
void initState() {
super.initState();
Future.delayed(Duration(seconds: 1)).then((_) {
_checkRequestLoad();
});
}
bool get _canScroll {
if (!_scrollController.hasClients) return false;
final x = _scrollController.position.maxScrollExtent;
final deviceHeight = MediaQuery.of(context).size.height;
return x - _progressIndicatorHeight > deviceHeight;
}
void _checkRequestLoad() {
final bloc = context.bloc<ShoeBoxBloc>();
if (bloc.state.billsAvailable && !_canScroll) {
context
.bloc<ShoeBoxBloc>()
.add(ShoeBoxEvent.scrollingOverUnloadedScope());
Future.delayed(Duration(seconds: 1)).then((_) {
_checkRequestLoad();
});
}
}
@override
Widget build(BuildContext context) {
return BlocBuilder<ShoeBoxBloc, ShoeBoxState>(
...
我希望你们中的某个人可以帮助我:)
最好, 亚历克斯
【问题讨论】:
-
只需将上下文传递给您的函数。
标签: flutter dart navigation