webpack 为什么体验如此差,配这配那的?

我写一堆代码,我希望webpack 给我自动优化好就行。为什么它要让我配这配那。一堆烂事。。就不能自动点出最优解吗?
我压根不想关注配这配那,我只关注页面效果和最高性能。

另外先不说高性能表现了,首页要跑起来都得先配置一堆烂东西,才能看到效果。我是写前端的,我关注这些要干嘛?

高手回答下这个问题。。

阅读 3.1k
3 个回答

Webpack 最核心的其实就是各种 loader,万物皆可模块化,这个思路其实很牛哔。

奈何其本身提供的插件其实很少,大部分功能都要靠社区来提供。

这就导致了两个主要的问题:

1、插件质量良莠不齐,这点几乎是社区主导项目的通病;

2、Webpack 到目前为止历经 4 个大版本,每个版本几乎都是毁灭性升级,但社区插件甚至官方插件却不一定有能力随之升级。(中文的技术博客还喜欢抄,压根也不 care 版本问题,有时候辛辛苦苦找到了一个需要的插件,结果弄了半天,发现版本不适配)

社区项目其实都有这方面的通病。三大框架也是一样,你会发现三大框架里最优秀(功能丰富、API 合理、文档齐全、有测试用例)的那批插件或是组件库,几乎都是大公司主导的项目。个人开发又十分优秀的有没有?有,凤毛麟角。

包括三大框架本身也是如此。React 背靠 Facebook;Angular 由 Google 主导;连 Vue 的核心贡献者,打开 Github 一看,也都是某几个国际大厂的。


软件工程最重要的一条理论就是:没有 “银弹”。

“性能” 这个这个东西很难有一个万金油的,要不怎么叫 “调优” 呢?你得调,才能优。指望一键傻瓜,不太现实,在后端也一样。

另外 Webpack 是为了解决工程化问题的,不用它你不照样能开发?传统的徒手写 HTML + JS + CSS,不一样吗?没 Webpack 之前前端们难道不写代码了?

如果你一共四五个页面,也不存在大量 AJAX 数据交互的话,大可不必杀鸡用牛刀。

你完全可以不用啊? 根据不同的 技术栈依赖、实际业务场景优化不可能是一成不变的,如果你的项目简单一些,就用一些默认配置啊!

https://zh.parceljs.org/

同意楼上观点 软件工程最重要的一条理论就是:没有 “银弹”。

其实什么叫做最优呢?举个例子,都说把图片合并或者 base64,可以减少请求呀之类。但是他有弊端吗?弊端就是文件体积增大了,而且还有缓存相关的问题。

本来只是图片显示的较慢,优化之后反而页面首屏变慢了。

这个其实挺头疼的,比如换个问题?我是前端我管它环境干嘛我是后端我管它网络干嘛我是设计我管它前端能不能实现

再回过头来说, webpack 本身就是为了解决一些问题的,不使用也是可以的。如果只是为了一键使用可以使用入 vue-cli 之类的

毕竟,薪资上去了,你自然愿意多搞点