webpack打包原理⾯试题
webpack打包原理 ⾯试题
1.webpack打包原理
把所有依赖打包成⼀个 bundle.js ⽂件,通过代码分割成单元⽚段并按需加载。
2.webpack的优势
(1) webpack 是以 commonJS 的形式来书写脚本,但对 AMD/CMD 的⽀持也很全⾯,⽅便旧项⽬进⾏代码迁移。
fopen文件不存在时自动创建
(2)能被模块化的不仅仅是 JS 了。
(3) 开发便捷,能替代部分 grunt/gulp 的⼯作,⽐如打包、压缩混淆、图⽚转base64等。
(4)扩展性强,插件机制完善
access建立一个小型信息管理系统3.什么是loader,什么是plugin
loader⽤于加载某些资源⽂件。因为webpack本⾝只能打包common.js规范的js⽂件,对于其他资源如css,img等,是没有办法加载的,这时就需要对应的loader将资源转化,从⽽进⾏加载。
plugin⽤于扩展webpack的功能。不同于loader,plugin的功能更加丰富,⽐如压缩打包,优化,不只局限于资源的加载。
4.什么是bundle,什么是chunk,什么是module
bundle:是由webpack打包出来的⽂件
chunk:是指webpack在进⾏模块依赖分析的时候,代码分割出来的代码块
module:是开发中的单个模块
spring多线程面试题5.webpack 和 gulp 的区别?
webpack是⼀个模块打包器,强调的是⼀个前端模块化⽅案,更侧重模块打包,我们可以把开发中的所有资源都看成是模块,通过loader 和plugin对资源进⾏处理。
gulp是⼀个前端⾃动化构建⼯具,强调的是前端开发的⼯作流程,可以通过配置⼀系列的task,第⼀ta
sk处理的事情(如代码压缩,合并,编译以及浏览器实时更新等)。然后定义这些执⾏顺序,来让glup执⾏这些task,从⽽构建项⽬的整个开发流程。⾃动化构建⼯具并不能把所有的模块打包到⼀起,也不能构建不同模块之间的依赖关系。
6.如何⾃动⽣成webpack配置⽂件?
webpack-cli/vue-vli
7.什么是模热更新?有什么优点?
siftheads手机破解版版模块热更新是webpack的⼀个功能,它可以使得代码修改之后,不⽤刷新浏览器就可以更新。在应⽤过程中替换添加删出模块,⽆需重新加载整个页⾯,是⾼级版的⾃动刷新浏览器。
优点:只更新变更内容,以节省宝贵的开发时间。调整样式更加快速,⼏乎相当于在浏览器中更改样式
8.webpack-dev-server 和 http服务器的区别
webpack-dev-server使⽤内存来存储webpack开发环境下的打包⽂件,并且可以使⽤模块热更新,⽐传统的http服务对开发更加有效。中医40天治好类风湿
9.什么是长缓存?在webpack中如何做到长缓存优化?
浏览器在⽤户访问页⾯的时候,为了加快加载速度,会对⽤户访问的静态资源进⾏存储,但是每⼀次代码升级或者更新,都需要浏览器去下载新的代码,最⽅便和最简单的更新⽅式就是引⼊新的⽂件名称。
在webpack中,可以在output给出输出的⽂件制定chunkhash,并且分离经常更新的代码和框架代码,通过NameModulesPlugin或者HashedModulesPlugin使再次打包⽂件名不变。
10.什么是Tree-sharking?
web前端基础面试题tree-sharking 是指在打包中去除那些引⼊了,但是在代码中没有被⽤到的那些死代码。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。