Navigator.подвинуть Провайдера ниже Провайдера-предка?
Я хотел бы отправить страницу, которая использует 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(),
);
},
),
);
}
Как мне подтолкнуть страницу (и ее провайдера) ниже моего предка провайдера?