有没有办法消除flutter中的传递依赖?

0yg35tkg  于 2023-01-27  发布在  Flutter
关注(0)|答案(1)|浏览(168)

我遇到了一个非常令人沮丧的问题,两个不同的包定义了相同的函数名showModalBottomSheet
我正在使用这个令人敬畏的flutter包https://pub.dev/documentation/country_code_picker,它有一个定义showModalBottomSheet的传递依赖modal_bottom_sheet。
升级到最新flutter版本3.7后,我无法运行我的应用,因为flutter material为自己定义了另一个showModalBottomSheet函数。这会导致编译错误,因为不知道使用2个不同导入中的哪一个。

Error (Xcode): ../../../.pub-cache/hosted/pub.dev/modal_bottom_sheet-2.1.2/lib/src/bottom_sheets/bar_bottom_sheet.dart:102:13: Error: 'ModalBottomSheetRoute' is imported from both 'package:flutter/src/material/bottom_sheet.dart' and 'package:modal_bottom_sheet/src/bottom_sheet_route.dart'.

有没有一种方法可以配置pubspec,并将其从所有可传递依赖项中传递给ingore https://pub.dev/packages/modal_bottom_sheet
这样我就避免了这个问题,应用程序也会运行良好。
附言:我看了其他较新的国家选择器库,但他们不支持现有的所有功能,所以最好的和最短的解决方案将是忽略(不安装)上述软件包

eivgtgni

eivgtgni1#

它是一个known issue。一个fix已被合并。您可以等待软件包作者发布更新,也可以尝试using the package from git

modal_bottom_sheet:
    git:
      url: https://github.com/jamesblasco/modal_bottom_sheet.git
      ref: main

注:根据OP(通过评论),上述内容不起作用,但以下内容起作用:

dependency_overrides:
  modal_bottom_sheet:
    git:
      url: https://github.com/danReynolds/modal_bottom_sheet.git
      path: modal_bottom_sheet

相关问题