微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

两个名为 RNCPicker / Yarn 的视图:如何在依赖之间共享依赖?

如何解决两个名为 RNCPicker / Yarn 的视图:如何在依赖之间共享依赖?

我正在构建一个 React Native 应用程序,在那里我遇到了以下问题:包 @react-native-picker/picker 被两个不同的节点模块包含。因此,我遇到了错误

tried to register two views with the same name RNCPicker

我尝试在应用程序 "resolutions" 中使用 package.json 块并指定 @react-native-picker/picker,但没有帮助。 纱线为什么显示以下内容

yarn why v1.22.5
[1/4] ?  Why do we have the module "@react-native-picker/picker"...?
[2/4] ?  Initialising dependency graph...
[3/4] ?  Finding dependency...
[4/4] ?  Calculating file sizes...
=> Found "@react-native-picker/picker@1.12.0"
info Reasons this module exists
   - "native-base" depends on it
   - Hoisted from "native-base#@react-native-picker#picker"
   - Hoisted from "component-library#react-native-picker-select#@react-native-picker#picker"
info disk size without dependencies: "488KB"
info disk size with unique dependencies: "488KB"
info disk size with transitive dependencies: "488KB"
info Number of shared dependencies: 0

component-library 包是我自己的,其中包含一个导入 react-native-picker-select 的组件。注释掉导入可以解决“两个视图”错误,但这显然不是解决方法

解决这个问题的正确方法是什么?在我看来,依赖应该在两个节点模块之间共享,所以只注册一个?这不是吊装应该发生的事情吗?

在组件库节点模块中将 react-native-picker-select 更新到最新版本 (8.0.4) 后出现错误。最新版本改用 @react-native-picker/picker

编辑:我有解决此问题的方法,但这仍然不是正确的解决方法。在应用程序 @react-native-picker/picker 中包含 package.json 并手动删除 node_modules/component-library/node_modules/@react-native-picker/picker 至少会使错误消失并再次运行应用程序,并使用有效的 react-native-picker-select 组件。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。