Pop и Push динамического маршрута не работает в Flutter
Ниже приведена последовательность страниц, которые у меня есть:
Страница загрузки -> Пользователь выбирает некоторые параметры
- Страница формы -> Пользователь вводит значение в форму и нажимает Загрузить
После завершения загрузки пользователь возвращается на страницу загрузки с помощью приведенного ниже кода.
if (Navigator.canPop(context)) {
Navigator.pop(context);
}
Все отлично работает.
Моя актуальная проблема:
Когда загрузка будет завершена, я хочу, чтобы пользователи переходили на страницу сведений о загруженном элементе. Но толчок не работает.
Ниже приведен полный код.
DesignsBlocProvider.of(context).addDesign(postData).then((val) {
setState(() {
uploading = false;
});
// To close the form page after upload. This works.
if (Navigator.canPop(context)) {
Navigator.pop(context);
}
// This does not work.
// Ideally user should be taken to DesignViewWidget page.
Navigator.pushReplacement(
context,
MaterialPageRoute(builder: (context) => DesignViewWidget(design)),
);
})