React Native 项目中与 TOCropViewController 的依赖冲突

问题描述 投票:0回答:2

当我尝试使用react-native-image-crop-picker和react-native-image-crop-tools时,我目前在React Native项目中面临依赖冲突。每个库都依赖于不同版本的 TOCropViewController,导致我无法解决冲突。

情况是这样的:

[!] CocoaPods could not find compatible versions for pod "TOCropViewController":
  In snapshot (Podfile.lock):
    TOCropViewController (= 2.6.1)

  In Podfile:
    RNImageCropPicker (from `../node_modules/react-native-image-crop-picker`) was resolved to 0.40.3, which depends on
      TOCropViewController

    react-native-image-crop-tools (from `../node_modules/react-native-image-crop-tools`) was resolved to 1.6.4, which depends on
      TOCropViewController (= 2.5.3)

我知道这是一个基本的依赖冲突,所以我在 Podfile 中添加了 pod 'TOCropViewController', '2.5.3'。但它还没有发挥作用。 如何解决这个问题? 欢迎任何建议。谢谢你

react-native dependencies conflict react-native-image-crop-picker
2个回答
1
投票

如果需要使用这两个包,您可以尝试手动调整react-native-image-crop-picker内的版本TOCropViewController,直到它按预期工作或直接禁用它(如果可能)。然后使用 https://www.npmjs.com/package/patch-package,您可以在每次安装/更新节点模块时将更改应用到 patch。请记住,这是一个必须有两个包的解决方案。


0
投票

我注意到react-native-image-crop-picker使用TOCropViewController 2.6.1版本,它引入了2.5.3版本中不存在的属性。由于react-native-image-crop-tools使用的是后一个版本,这种不兼容性促使我更新react-native-image-crop-tools中的TOCropViewController版本。

具体来说,我更改了 podspec 中的依赖版本

node_modules/react-native-image-crop-tools/react-native-image-crop-tools/podspec
来自:

s.dependency 'TOCropViewController', '2.5.3' => s.dependency 'TOCropViewController', '2.6.1'

© www.soinside.com 2019 - 2024. All rights reserved.