我有2个屏幕,
- 屏幕一包含一个列表视图,每个项目都有 onPressed 操作
- 屏幕二包含按下项目的详细信息以及与屏幕一具有相同列表视图的抽屉。
我在这里要做的是,当用户进入详细信息屏幕并单击抽屉中的项目时,详细信息屏幕应该弹出并使用新参数推回。
到目前为止的代码,
路线
GetPage(
name: '/market-detail',
page: () => MarketDetail(),
binding: MarketDetailBinding(),
),
捆绑
class MarketDetailBinding extends Bindings {
@override
void dependencies() {
Get.lazyPut(() => MarketDetailController());
}
}
单击屏幕一中的操作
onTap: () {
Get.toNamed('market-detail',
arguments: {'market': market});
},
详细画面类
class MarketDetail extends GetView<MarketDetailController> {
final Market market = Get.arguments['market'];
}
单击详细屏幕侧边栏的操作
onTap: () {
Get.back();
Get.back();
Get.toNamed('market-detail',
arguments: {'market': market});
},
首先 Get.back() 是关闭抽屉,然后移除路由并再次推回相同的路由,
预期行为,
MarketDetailController 应该从内存中删除并重新放置,
实际发生的事情
在我热启动应用程序(通过单击保存)之前,控制器仅被删除并且不会在抽屉单击操作中恢复记忆。
如果有人理解它,请帮助我被困在这里。