第四篇:npx、npm run、npm install -g 到底有什么区别?

举报
yd_220371319 发表于 2026/09/01 13:52:47 2026/09/01
【摘要】 npx、npm run、npm install -g 到底有什么区别?Node.js 开发中经常会看到:npm installnpm runnpx xxx还有:npm install -g xxx它们到底有什么区别?npm install:安装依赖例如:npm install axios表示把 Axios 安装到项目中。开发工具则通常:npm install -D typescript安装到...

npx、npm run、npm install -g 到底有什么区别?

Node.js 开发中经常会看到:

npm install
npm run
npx xxx

还有:

npm install -g xxx

它们到底有什么区别?

npm install:安装依赖

例如:

npm install axios

表示把 Axios 安装到项目中。

开发工具则通常:

npm install -D typescript

安装到 devDependencies


npm run:执行 package.json 脚本

如果 package.json 中有:

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

就可以:

npm run dev

或者:

npm run build

也就是说:

npm run → 执行 package.json 中定义的脚本

npx:直接执行 CLI

例如:

npx tsc

表示直接运行 TypeScript 提供的 CLI。

它通常会优先使用项目中的依赖。


npm install -g:全局安装

例如:

npm install -g typescript

安装之后,可以直接:

tsc

但是全局安装存在一个问题:

不同项目可能需要不同版本。

因此现代项目通常更倾向于:

npm install -D typescript
npx tsc

而不是:

npm install -g typescript

一张表看懂

命令 作用
npm install xxx 安装项目依赖
npm install -D xxx 安装开发依赖
npm run xxx 执行 package.json 脚本
npx xxx 执行 npm CLI
npm install -g xxx 全局安装工具

实际开发怎么选?

一般来说:

项目依赖:

npm install

项目脚本:

npm run dev

执行项目 CLI:

npx eslint .

确实需要全局使用的 CLI:

npm install -g xxx

这样理解起来就简单多了。

下一篇,我们聊聊 npx 一个非常重要的问题:直接运行陌生的 npx 命令安全吗?

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。