Npm 包是如何在终端被执行的
· 阅读需 8 分钟
你是否思考过一个问题,当用户在操作系统终端输入一些 npm 包提供的命令,例如:
$ rollup foo.js
# 或者
$ vue-cli create demo
当用户按下回车键后这些命令是怎么被系统执行的?
现在,一起来在这篇文章里好好探究一番。
首先,就上面示例的两行命令执行的必要条件是需要 npm -g
全局安装的到本机,否则在终端将找不到此命令的执行文件。
当然,如果是
npx rollup foo.js
那又是另一种情况了。
就以 vue-cli
举例,当用户在本机全局安装 vue-cli
后,vue-cli
将会被安装的本机的全局 npm 所在的 node_modules。
但是如果你的本机有多个 nodejs 的版本,你可能用到了 nvm
或者 pnpm
管理你本机的 node 版本,那么你的全局 npm 包会安装到当前使用的 Nodejs 版本的 node_modules 中。