Javascript 如何在npm安装过程中添加带有波浪线或插入符号的npm依赖项
我开发了一个npm模块(我们称之为Javascript 如何在npm安装过程中添加带有波浪线或插入符号的npm依赖项,javascript,node.js,npm,npm-install,npm-publish,Javascript,Node.js,Npm,Npm Install,Npm Publish,我开发了一个npm模块(我们称之为module-x),定期在npm平台上更新和发布 使用此模块的软件通过运行npm i module-x来安装它,但在包的依赖项部分。json模块-x安装有固定版本(module-x:“1.0.0”) 我想使用tilde或caret版本,而不是像这样的“module-x”:“~1.0.0” 我已经看到像request这样的库可以做到这一点,但是它们是如何做到的呢 文件package.json中的前缀(无论是^还是~或无)取决于安装包的机器上npm的设置,而不是项目
module-x
),定期在npm平台上更新和发布
使用此模块的软件通过运行npm i module-x
来安装它,但在包的依赖项部分。json
模块-x安装有固定版本(module-x:“1.0.0”
)
我想使用tilde或caret版本,而不是像这样的“module-x”:“~1.0.0”
我已经看到像
request
这样的库可以做到这一点,但是它们是如何做到的呢 文件package.json
中的前缀(无论是^
还是~
或无)取决于安装包的机器上npm的设置,而不是项目的设置。从您的示例中,您作为module-x
的创建者,无法强制依赖项的用户安装module-x:“^1.0.0”
或module-x:“~1.0.0”
。这是他们的选择如何安装它,因此如何更新它
你可以:
npm config set save prefix“~”
更改npm命令的全局设置(这将导致他们的所有安装都使用~prefix)package.json
文件中的前缀(无论是^
还是~
或无)取决于安装包的计算机上的npm设置,而不是您的项目设置。从您的示例中,您作为module-x
的创建者,无法强制依赖项的用户安装module-x:“^1.0.0”
或module-x:“~1.0.0”
。这是他们的选择如何安装它,因此如何更新它
你可以:
npm config set save prefix“~”
更改npm命令的全局设置(这将导致他们的所有安装都使用~prefix)npm的默认设置是使用semver版本控制,因此您应该得到
^1.0.0
。检查你的.npmrc
确保你没有设置save exact=true
来覆盖此行为。你好@Keith,谢谢你的回复。我使用的是0.0.x,npm似乎不支持它,它必须从1.0.0开始(如上所述)。现在它正在使用插入符号版本控制。npm的默认版本控制是使用semver版本控制,因此您应该得到^1.0.0
。检查你的.npmrc
确保你没有设置save exact=true
来覆盖此行为。你好@Keith,谢谢你的回复。我使用的是0.0.x,npm似乎不支持它,它必须从1.0.0开始(如上所述)。现在它正在使用插入符号版本控制。