Webpack入门

215 阅读2分钟

学习视频:尚硅谷新版Webpack实战教程(从入门到精通)

配套笔记:重学webpack(配置详解),有四篇

这个老师讲的很好,以前学vue的时候以为Webpack东西很少,都给你配好了,再来学Webpack才知道配置这么多,vue是基于Webpack构建的,懂了webpack,vue的很多东西就能看懂了。(笔记也记得非常详细非常好,感谢大佬!)

附上自己随笔记的笔记:

  1. 安装好node,就会多一个npm指令

  2. eval到底是个什么东西,学了好几次了还是忘记

  3. npm下包之后,会多一个node_modules文件夹和package.json、package-lock,json配置文件

  4. 在终端输入webpack指令就可以运行了(进行打包)

  5. **webpack-dev-server**是本地安装,要想启动需要用npx这个指令

  6. 这个老师讲的是webpack4,最新的自己再对比着看文档就好了

    1. webpack5之后自动压缩css,不用再自己下插件

    2. ‘js兼容性处理之babel’中@babel/polyfill这个好像废弃了

  7. 讲解了js语法检查--Eslint

  8. HMR是基于devserver(wds)的,在生产环境下对js文件优化,就不能用HMR了,可以开启babel缓存

  9. 淘宝已经不适用pwa技术了

  10. 官方文档:最好看英文版的(进去也有对应的中文文档,印记中文做的),全而新,中文版的没那么全

  11. devServer:配置中proxy很重要,vue的跟这个是一模一样的。浏览器和服务器之间有跨域,但是服务器与服务器之间是没有跨域的,而我们的代码是通过代理服务器proxy运行,所以浏览器和代理服务器之间没有跨域问题,所以浏览器可以把请求发送到代理服务器上,而代理服务器替你转发到另一个服务器上,服务器之间没有跨域问题,故请求成功。代理服务器再把接收到的请求响应给浏览器,从而解决开发环境下的跨域问题。

  12. webpack5:

    • npm init -y初始化包描述文件

    • 只用指定mode,而入口、出口、loader、plugins都是默认的,不用单独指定

    • webpack4的tree shaking存在一些遗留性问题,只能分析一层,而webpack5的tree shaking更强大,且打包后体积更小

    • 持久缓存:新增了属性cach,可以更好地缓存构建后的资源,打包速度更快

    • hash值的计算会以更好的算法计算,从而优化性能

    • 升级:可以看这个文档,来看webpack5相对于webpack4做了哪些重大的升级