在a目录下执行npm link(后边没有其他参数)
然后就会不断出现postinstall不断变动
显示正在解压缩包到a/node_modules文件夹下
然后a目录的node_modules就会更新一遍
执行完类似npm install的行为之后就是我预期的行为了:在全局包路径下建立一个指向当前a目录的软链接
在a目录下执行npm link(后边没有其他参数)
然后就会不断出现postinstall不断变动
显示正在解压缩包到a/node_modules文件夹下
然后a目录的node_modules就会更新一遍
执行完类似npm install的行为之后就是我预期的行为了:在全局包路径下建立一个指向当前a目录的软链接
npm link 命令是为了解决开发过程中,项目依赖问题的一种解决方案。它允许你将项目中的一个模块链接到另一个项目中,使其可以在另一个项目中直接使用。
当你执行 npm link
命令时,npm 会创建一个全局的符号链接,将你的项目中的模块暴露出来,使其可以在其他项目中直接使用。这个命令实际上是在你的项目的根目录下创建一个软链接,指向你当前的项目目录。
由于 npm link 命令会创建一个全局的符号链接,因此当你在执行该命令时,npm 会自动运行 npm install
命令,以确保你的项目中的所有依赖项都被正确地安装到 node_modules
文件夹中。这是 npm 的一个特性,它会在执行 link 命令时自动运行 install 命令。
至于你提到的 postinstall
不断变动的问题,这可能是因为你的项目中存在一些 postinstall
脚本。这些脚本通常用于在安装依赖项后执行一些额外的操作,例如运行测试、构建代码等。当你执行 npm link 命令时,这些 postinstall
脚本会因为依赖项的改变而被触发,并执行相应的操作。
如果你不希望在执行 npm link 命令时出现类似 npm install 的行为,你可以尝试在执行 link 命令时使用 --production
参数。这个参数会告诉 npm 不要运行 postinstall
脚本,也不会自动运行 npm install
命令。例如:
npm link --production
但是请注意,这可能会导致你的项目中的依赖项没有被正确地安装或更新,因此在执行 link 命令之前最好确保你已经正确地安装了所有的依赖项。
10 回答11.1k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
4 回答2.4k 阅读✓ 已解决