2025/12/17总结

npm 和 npx

npm npdejs 的包仓库+包管理器,他的痛点是 全局安装包会产生版本冲突,需要手动配置path 来执行相关命令,临时工具使用不便

npx nodejs 的包执行器 无需安装,直接运行,内置与 npm 中,npx 会智能执行流程 执行命令,并且临时安装执行,还可以指定版本执行,直接运行 github 代码 ,交互式命令选择

维度 npm npx
主要用途 包管理(安装、卸载、发布) 包执行(运行命令)
安装位置 node_modules(本地)或全局 临时缓存(默认)
持久性 永久安装 临时使用(可缓存)
版本管理 通过 package.json 锁定版本 可指定任意版本运行
全局污染 全局安装会污染环境 几乎无污染
执行速度 首次安装慢,后续快 首次下载慢,缓存后快
典型命令 npm installnpm run npx create-react-app
诞生时间 2010年 2017年(npm@5.2.0)
包含关系 独立工具 npm 的一部分(捆绑发布)

指定webpack 文件,可使用 npx webpack --config xx.js

webpack 只知道处理 js 文件和 json 文件,所以在处理其他文件时,就需要用到 loader ,loader 可以帮助webpack处理其他类型的文件,因此遇到 jpg 文件时,我们可以在 module 下设置

复制代码
module:{
   
    rules:[{
   
        test:/\.jpg$/,
        use:{
   
            loader:'file-loader'
        }
    }]
    },

loader 的执行顺序是,从下到上,从右到左

webpack 如果需要定位到错误代码,可以将 devtool 改成 source-map 这样就能定位到错误代码

HMR 热模块更新

每次更新在原有基础上改,而不是刷新页面重新加载,开启 devServer 选项 中的 hot:true 即可

Babel 的作用是 将 ES6 语法转为 ES5 的语法(因为不是所有的浏览器都支持 ES6)

babel-polyfill 将缺失的特性加到浏览器中

相关推荐
晚霞的不甘1 小时前
Flutter for OpenHarmony手势涂鸦画板开发详解
前端·学习·flutter·前端框架·交互
We་ct1 小时前
LeetCode 73. 矩阵置零:原地算法实现与优化解析
前端·算法·leetcode·矩阵·typescript
晚霞的不甘1 小时前
Flutter for OpenHarmony 实现动态天气与空气质量仪表盘:从 UI 到动画的完整解析
前端·flutter·ui·前端框架·交互
~小仙女~2 小时前
组件的二次封装
前端·javascript·vue.js
这是个栗子2 小时前
AI辅助编程(一) - ChatGPT
前端·vue.js·人工智能·chatgpt
2501_944448002 小时前
Flutter for OpenHarmony衣橱管家App实战:预算管理实现
前端·javascript·flutter
Remember_9932 小时前
Spring 核心原理深度解析:Bean 作用域、生命周期与 Spring Boot 自动配置
java·前端·spring boot·后端·spring·面试
笨蛋不要掉眼泪2 小时前
Redis持久化解析:RDB和AOF的对比
前端·javascript·redis
心.c2 小时前
Vue3+Node.js实现文件上传分片上传和断点续传【详细教程】
前端·javascript·vue.js·算法·node.js·哈希算法
We་ct2 小时前
LeetCode 48. 旋转图像:原地旋转最优解法
前端·算法·leetcode·typescript