NPM相关

72 阅读1分钟

NPM

npm是包管理工具,本身不直接运行包,一般以package.json中借助脚本执行。

npm安装包时,当包的package.json中包含bin字段,会把指向可执行文件的符号链接放到node_modules下隐藏的.bin文件夹中,而通过npm启动的脚本(npm run)会默认把node_modules/.bin加到PATH环境变量中。

如果.bin文件夹下的文件内容第一行内容:

#!/usr/bin/env node

会告诉系统用node解析,就可以直接在脚本命令中使用包名,以vite为例,就可以在脚本中直接:

"scripts":{
    "build": "vite build",
}

NPX

npm5.2之后npx与npm预绑定,可直接使用。npx可以执行依赖包中的二进制文件。

如果想运行某个包,可以

npx your-package

Npx 将检查 $PATH 或本地项目二进制文件中是否存在 < command > 或 < package > ,如果存在,则执行它。 如果本地没有安装该包,则会临时安装该包,命令完成后将该包删除。

npx 甚至支持运行远程仓库的可执行文件:

npx github:piuccio/cowsay hello