npm全局安装包的原理

在前端工程搭建的时候,可能需要安装一些全局的命令行工具,比如vue-cli。需要注意的是,全局模式并不是将一个模块包安装为一个全局包的意思,它并不意味着可以从任何地方通过 require() 来引用到它。

全局模式这个称谓其实并不精确,存在诸多误导。实际上, -g 是将一个包安装为全局可用的可执行命令。它根据包描述文件中的 bin 字段配置,将实际脚本链接到与Node可执行文件相同的路径下:

"bin": {
"express": "./bin/express"
},

事实上,通过全局模式安装的所有模块包都被安装进了一个统一的目录下,这个目录可以通过如下方式推算出来:

node

如果Node可执行文件的位置是/Program Files/nodejs/node.exe,那么模块目录就是/Program Files/nodejs/node_modules。最后,通过软链接的方式将 bin 字段
配置的可执行文件链接到Node的可执行目录下。

在linux系统上看更清楚:

linux

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

微个日光日

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值