Flutter编译报错:‘MenuController’重复导入问题求助
这个报错是因为你的代码同时导入了Flutter Material库自带的MenuController和你自己项目里的MenuController,两者重名导致编译器无法区分。flutter clean和flutter pub get解决的是依赖缓存问题,对这种命名冲突没用,试试下面的方法:
给自定义控制器加导入别名
在导入你的menu_controller.dart时添加别名,比如:import 'package:vale_ace_boy/controller/menu_controller.dart' as appMenu;之后在代码里用
appMenu.MenuController来引用你自己的控制器,Flutter自带的则直接用MenuController。隐藏或显式导入指定类
如果你的代码里不需要用Flutter的MenuController,可以在导入material包时隐藏它:import 'package:flutter/material.dart' hide MenuController;或者只导入你自定义的
MenuController:import 'package:vale_ace_boy/controller/menu_controller.dart' show MenuController;重命名自定义控制器类
最彻底的办法是直接修改你自己的MenuController类名,比如改成AppMenuController或者CustomMenuController,然后更新所有用到这个类的地方,从根源上避免重名冲突。
内容的提问来源于stack exchange,提问作者user8521658
相关产品推荐
相关产品推荐

