webPack是什么
模块打包工具:分析项目结构,
(1)翻译
找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeScript等)进行翻译
(2)打包
将多种静态资源 js、css、less 转换成一个静态文件供浏览器使用。减少了页面的请求。其核心在于让我们进行模块化开发,并且会帮助我们处理模块间的依赖关系。
工作原理
自执行函数,参数为对象(key:路径value:函数eval:代码), 通过递归的方式不停的调用自己进行打包
把所有依赖打包成一个 bundle.js 文件,通过代码分割成单元片段并**按需加载。
做什么
代码转换、文件优化、代码分割、模快合并、自动刷新发布、代码效验。
优化
懒加载、热更新、按需导入、大文件cdn代理