package.json配置项积累

peerDependencies

用途:peerDependencies 主要用于声明一个包在其宿主项目中期望安装的依赖版本。它通常用于确保插件或库与特定版本的其他库兼容。

行为:

在 npm v7之前,如果宿主项目未安装 peerDependencies 中列出的依赖,则不会强制安装这些依赖,仅会发出警告。

自 npm v7起,默认行为变更为尝试自动安装 peerDependencies 中列出的所有依赖,但如果存在版本冲突,则仍需手动解决。

适用场景:当你开发一个库或者插件,该库或插件需要与某个特定版本的核心库协作时非常有用。例如,一个 React 组件库可能会声明 "react": "^17.0.0" 作为其 peerDependencies,以确保它能与React 17.x.x版本正确工作。

resolutions

用途:resolutions 字段是 Yarn 工具特有的功能(不被 npm 原生支持),用于强制所有子依赖项使用特定版本的依赖。这对于解决复杂的依赖树中的版本冲突特别有用。

行为:通过在项目的 package.json 文件中添加 resolutions 字段,可以指定某些依赖的确切版本号,Yarn 将强制整个依赖树使用这些指定版本。

适用场景:当你的项目依赖的多个包间接依赖于同一个包的不同版本时,可能会导致兼容性问题。这时可以通过 resolutions 强制所有相关依赖使用同一版本来解决问题。

相关推荐
青草地溪水旁16 小时前
Visual Studio Code中launch.json深度解析:C++调试的艺术
c++·vscode·json
Zwb2997923 天前
Day 30 - 错误、异常与 JSON 数据 - Python学习笔记
笔记·python·学习·json
眠りたいです3 天前
基于脚手架微服务的视频点播系统-脚手架开发部分-jsoncpp,protobuf,Cpp-httplib与WebSocketpp中间件介绍与使用
c++·websocket·微服务·中间件·json·protobuf·cpp-httplib
我是大头鸟3 天前
XMLHttpRequest 发送json 格式的数据,servlet 接收
servlet·json·xmlhttprequest
程序新视界4 天前
一篇文章详解你不知道的MySQL JSON数据类型
数据库·mysql·json
数据知道4 天前
Go基础:json文件处理详解(标准库`encoding/json`)
开发语言·后端·golang·json·go语言
广都--编程每日问5 天前
deepseek 的对话json导出成word和pdf
pdf·json·word·deepseek·exprot
包达叔7 天前
仿NewLife的XmlConfig类实现Json配置文件
c#·json·newlife
爱吃香蕉的阿豪9 天前
.NET Core 中 System.Text.Json 与 Newtonsoft.Json 深度对比:用法、性能与场景选型
数据库·json·.netcore
千叶寻-9 天前
package.json详解
前端·vue.js·react.js·webpack·前端框架·node.js·json