npx 和 npm 区别

文章目录

背景

  • 解决 npm 之前的执行包中的命令行需要先下载的问题,如果有多个不同版本的包就需要下载多次
  • 比如已经装了全局的 webpack 1.x 版本并且还要继续使用,还需要装个 webpack 4.x 使用的其相应功能,这个时候可以不装在全局,用 npx webpack 代替 webpack 命令,互不干扰。

作用

  • 避免下载多个库造成的体积浪费、污染等问题
  • 可以指定运行多个版本互不干扰
  • 可以方便临时切换某个 node 版本执行
javascript 复制代码
npx node@14 -v
# v14.18.0

npx -p node@14 node -v 
# v14.18.0

执行流程

  • npx create-react-app my-app
    • npx 和 npm exec 类似,传递的参数格式有区别
  • $PATH 里有没有,如果没有,查找当前目录的 node_modules 里有没有,如果还是没有,就安装这个库来执行
  • npx 会在执行完命令后删除下载的包
相关推荐
|晴 天|5 小时前
Vue 3 + TypeScript + Element Plus 博客系统开发总结与思考
前端·vue.js·typescript
猫3285 小时前
v-cloak
前端·javascript·vue.js
旷世奇才李先生5 小时前
Vue 3\+Vite\+Pinia实战:企业级前端项目架构设计
前端·javascript·vue.js
SoaringHeart7 小时前
Flutter进阶:用OverlayEntry 实现所有弹窗效果
前端·flutter
IT_陈寒9 小时前
Vite静态资源加载把我坑惨了
前端·人工智能·后端
herinspace9 小时前
管家婆实用贴-如何分离和附加数据库
开发语言·前端·javascript·数据库·语音识别
小码哥_常9 小时前
从MVC到MVI:一文吃透架构模式进化史
前端
嗷o嗷o9 小时前
Android BLE 的 notify 和 indicate 到底有什么区别
前端
豹哥学前端9 小时前
别再背“var 提升,let/const 不提升”了:揭开暂时性死区的真实面目
前端·面试
lar_slw10 小时前
k8s部署前端项目
前端·容器·kubernetes