Webpack简述

一、为什么要构建工具

人类喜欢书写的代码以及开发方式计算机不喜欢,构建工具的作用就是让人类舒舒服服写自己喜欢的代码,然后一打包生成计算机喜欢的代码

第一个webpack自身仅仅是将我们引入的模块打包成一个文件(编译import),至于es6,ts等等的编译是引入的插件和loader做的

二、webpack的基础配置

通过js引入关系建立树,然后最终打包成一个js

webpack本地的版本和项目的版本不一样

直接输入指令,npm run dev调用会使用本地的webpack进行打包

1.打包配置命名

默认以根目录下的webpack.config.js作为入口进行打包,如果想指定文件作为入口

要用commonjs(require)的语法规范写,不能用es6(import export default)

2.mode的三个取值

  • none:直接打包,不做处理

  • 生产模式(production):压缩和简化代码

  • 开发模式(development):不会压缩和简化代码

3.基本格式

loader

三、webpack处理js

1.babel-loader的配置

javascript 复制代码
npm install babel-loader @babel/core

babel-loader作为接口安装真正编译的包@babel/core

loader定义对某种类型的处理方案

2.options配置

也可以将presets配置放在.babelrc的文件中以json格式书写

3.eslint的工作

在根目录下新建一个eslintrc.js文件,用于写eslint的插件配置

相关推荐
苏灿烤鱼16 分钟前
没有机密文件,也没有付费数据,在浏览器里造一颗"间谍卫星"
前端·javascript·github
泯泷41 分钟前
手搓JSVM第 5 篇:写第一个编译器:从 AST 生成 IR
前端·javascript·算法
泯泷1 小时前
手搓JSVM第 7 篇:控制流:if、while 与 jump
前端·javascript·算法
泯泷1 小时前
手搓JSVM第 6 篇:把 IR 编成字节码:emit 与 label fixup
前端·javascript·算法
泯泷1 小时前
手搓JSVM第 3 篇:从栈式 VM 到寄存器式 VM:为什么我们选择寄存器
前端·javascript·算法
泯泷1 小时前
第 4 篇:让 VM 支持变量:Slot、Environment 与 TDZ
前端·javascript·算法
粥里有勺糖3 小时前
视野修炼-技术周刊第131期 | Bun 与 pnpm Rust 化
前端·github·agent
Coodor3 小时前
如何在web浏览器使用js操作CPU卡
开发语言·前端·javascript·cpu卡
lilian2333 小时前
HarmonyOS 7 新特性(四)|沉浸光感:空间材质、性能分级与降级策略
前端·pytorch·华为·harmonyos·材质