Flutter 3.7.0中ModalBottomSheetRoute导入冲突问题
解决Flutter 3.7.0升级后
ModalBottomSheetRoute重复导入冲突 指定导入别名:给第三方包设置别名,区分官方类与第三方类。示例代码:
// 正常导入官方Material库 import 'package:flutter/material.dart'; // 给第三方包添加别名 import 'package:modal_bottom_sheet/modal_bottom_sheet.dart' as modalSheet;使用时通过别名调用第三方类:
// 调用第三方包的ModalBottomSheetRoute Navigator.push(context, modalSheet.ModalBottomSheetRoute(...)); // 官方类直接调用 Navigator.push(context, ModalBottomSheetRoute(...));隐藏冲突类:如果只需要其中一方的
ModalBottomSheetRoute,导入时隐藏另一方的冲突类:
仅使用第三方包的类:import 'package:flutter/material.dart' hide ModalBottomSheetRoute; import 'package:modal_bottom_sheet/modal_bottom_sheet.dart';仅使用官方类:
import 'package:flutter/material.dart'; import 'package:modal_bottom_sheet/modal_bottom_sheet.dart' hide ModalBottomSheetRoute;升级第三方包:检查
modal_bottom_sheet是否有适配Flutter 3.7.0+的新版本,新版本可能已修复命名冲突问题。执行命令更新包:flutter pub upgrade modal_bottom_sheet替换为官方实现:若官方
showModalBottomSheet已能满足需求,直接移除modal_bottom_sheet依赖,使用官方API替代,从根源解决冲突。
内容的提问来源于stack exchange,提问作者Noman Ijaz
相关产品推荐
相关产品推荐

