// 弹出:商品详情信息页面voidshowInfoBottomSheet(int shopId,int goodsId){showModalBottomSheet(context:Get.context!,isScrollControlled:true,backgroundColor:Colors.transparent,isDismissible:true,enableDrag:true,builder:(context){returnContainer(height:MediaQuery.of(context).size.height*0.8,decoration:BoxDecoration(color:AppTheme.pageBgColor,borderRadius:BorderRadius.only(topLeft:Radius.circular(40.w),topRight:Radius.circular(40.w),),),clipBehavior:Clip.antiAlias,child:InfoPage(arguments:{'shopId':shopId,'goodsId':goodsId,'customCallback':(){// 关闭弹窗Get.back();// 执行确认后的业务逻辑print('用户确认了商品ID: $goodsId');showCreateOrderBottomSheet(shopId,goodsId);},},),);},);}info页面需要接收参数和回调
import'dart:convert';import'package:flutter/material.dart';import'package:get/get.dart';classInfoControllerextendsGetxController{finalMap<String,dynamic>arguments;InfoController({requiredthis.arguments});// IDint shopId=0;int goodsId=0;// 自定义回调函数VoidCallback?customCallback;void_initData()async{shopId=arguments['shopId']??0;goodsId=arguments['goodsId']??0;customCallback=arguments['customCallback'];update(["info"]);}// 确认操作voidonConfirm(){customCallback?.call();}}import'package:ayidaojia/common/index.dart';import'package:ducafe_ui_core/ducafe_ui_core.dart';import'package:flutter/material.dart';import'package:flutter_widget_from_html_core/flutter_widget_from_html_core.dart';import'package:get/get.dart';import'index.dart';classInfoPageextendsGetView<InfoController>{constInfoPage({super.key,requiredthis.arguments});finalMap<String,dynamic>arguments;// 主视图Widget_buildView(){return<Widget>[].toColumn();}// 底部按钮Widget_buildBottomBar(){varbottomStatusBarHeight=MediaQuery.of(Get.context!).padding.bottom;return<Widget>[ButtonWidget(text:'立即抢购',width:750,height:98,borderRadius:0,onTap:()=>controller.onConfirm(),),].toRow(mainAxisAlignment:MainAxisAlignment.center).paddingOnly(bottom:bottomStatusBarHeight);}@overrideWidgetbuild(BuildContext context){returnGetBuilder<InfoController>(init:InfoController(arguments:arguments),id:"info",builder:(_){return<Widget>[// 主体内容 内部可滚动Expanded(child:SingleChildScrollView(child:_buildView(),),),// 固定在底部按钮的按钮_buildBottomBar(),].toColumn();},);}}