Flutter 块状态值已更新但导航值为空

时间:2021-05-04 16:49:25

标签: flutter bloc flutter-bloc flutter-navigation flutter-state

我在我的 bloc 文件中使用此 context.read<SurveyBloc>().add(SurveyChanged(surveys: data)); 更新 BLOC 状态,更新值已打印,但在我导航到下一页后值未更新。也使用相同的块。

块文件片段

if (event is SurveyChanged) {
      print("SurveyChanged:"+ event.surveys.survey_name);
      yield state.copyWith(surveys: event.surveys);

    }

这就是我更新我的区块并导航到下一页的方式

onTap: () {
            context.read<SurveyBloc>().add(SurveyChanged(surveys: data));
            Navigator.of(context).push(
                MaterialPageRoute(builder: (context) {
                  return SurveyView();
                }));
          }

surveyEvent.dart

import 'package:whfms_mobile_app/models/ModelProvider.dart';

abstract class SurveyEvent {}

class SurveyHome extends SurveyEvent{

}

class SurveyResultChanged extends SurveyEvent {
  final String surveyResult;
  SurveyResultChanged({this.surveyResult});
}
class SurveyModeChanged extends SurveyEvent {
  final String mode;
  SurveyModeChanged({this.mode});
}
class SurveyChanged extends SurveyEvent {
  final Surveys surveys;
  SurveyChanged({this.surveys});
}

class SaveSurveyChanges extends SurveyEvent {}

我的应用程序结构与this repo

相同

1 个答案:

答案 0 :(得分:0)

w_data