已安装flutter_redux仍需单独安装redux?Store类导入问题咨询
为什么安装flutter_redux后还需要单独安装redux?
这问题我配置Flutter Redux项目时也碰到过,核心原因和Flutter的包依赖管理机制有关,咱们来拆解清楚:
传递依赖的“隐形”坑:
官方说redux是flutter_redux的依赖没错,但pub默认会把这类依赖标记为传递依赖——它确实会被自动安装,但有时候因为IDE缓存、pub依赖树解析的小bug,或者隐性的版本冲突,导致你的项目无法直接识别到redux里的Store类,IDE的代码补全和导入提示也会跟着“罢工”。直接依赖的确定性:
当你手动把redux添加到项目的pubspec.yaml作为直接依赖时,pub会强制确保这个包被正确下载、整合到你的依赖树中,IDE也会立刻把它识别为项目的一级依赖,自然就能正常导入Store类了。版本冲突的潜在因素:
还有一种可能是flutter_redux依赖的redux版本比较旧,或者和你项目中其他依赖包的redux版本要求冲突,导致传递依赖的redux没有被成功安装。手动指定兼容的redux版本,能直接解决这类版本冲突问题。
快速解决建议
- 先试试执行命令:
flutter pub get,刷新一下依赖缓存,很多时候不需要手动安装就能解决问题。 - 如果刷新后还是不行,再手动在
pubspec.yaml的dependencies里添加redux,比如:
之后再执行dependencies: flutter_redux: ^x.x.x redux: ^x.x.x # 版本号请和flutter_redux的依赖要求匹配flutter pub get即可。
内容的提问来源于stack exchange,提问作者Mehrdad Shokri
相关产品推荐
相关产品推荐

