Navigator.push一个提供者低于祖先提供者?

时间:2020-08-31 13:24:28

标签: flutter flutter-navigation flutter-change-notifier

我想推送一个使用ChangeNotifierProxyProvider的页面,因此需要新页面及其提供者位于祖先提供者之下。使用Navigator.push(..)将我的新页面放在小部件树的顶部,在我需要访问的祖先上方。

这是我有问题的功能。 SurveyEditorViewModel是我的祖先提供者,我需要从SurveyViewerViewModel访问。

showSurveyViewer(BuildContext context) {
  Navigator.push(
    context,
    MaterialPageRoute(
      builder: (context) {
        return ChangeNotifierProxyProvider<SurveyEditorViewModel, SurveyViewerViewModel>(
          create: (_) => SurveyViewerViewModel(),
          update: (_, surveyEditorViewModel, surveyViewerViewModel) =>
              surveyViewerViewModel..update(surveyEditorViewModel),
          child: SurveyViewerPage(),
        );
      },
    ),
  );
}

我如何将页面(及其提供者)推送到祖先提供者下方?

0 个答案:

没有答案