首页  >  问答  >  正文

如何避免在软件包发布过程中重复安装React?

我已经使用React开发了很长时间,但最近才尝试发布包。

我正在开发的包的一个依赖项会在包和被安装到的项目之间存在冲突的React安装时出现问题。(该包是react-query)

我该如何处理这种情况?

理想情况下,我希望两个版本保持一致,因为React 17.x和React 18.x存在奇怪的类型更改,当它们一起使用时会引发问题。但老实说,我完全迷失了。

搜索似乎没有找到我可以使用的任何内容。

P粉036800074P粉036800074430 天前564

全部回复(1)我来回复

  • P粉105971514

    P粉1059715142023-09-09 07:17:07

    你应该在你的lib package.json文件中将react指定为peer dependency

    "peerDependencies": {
      "react": ">= 17"
    }
    

    当遇到peer dependency时,npm会检查使用你的lib的项目的依赖:

    • 如果这些依赖包括与版本要求匹配的react,则不需要做其他操作
    • 如果没有找到合适版本的react,则npm会安装最新匹配的版本

    在旧版本的npm中,行为可能会有所不同,只会在npm install期间在控制台中打印警告。

    回复
    0
  • 取消回复