我写一堆代码,我希望webpack 给我自动优化好就行。为什么它要让我配这配那。一堆烂事。。就不能自动点出最优解吗?
我压根不想关注配这配那,我只关注页面效果和最高性能。
另外先不说高性能表现了,首页要跑起来都得先配置一堆烂东西,才能看到效果。我是写前端的,我关注这些要干嘛?
高手回答下这个问题。。
###Webpack 最核心的其实就是各种 loader,万物皆可模块化,这个思路其实很牛哔。
奈何其本身提供的插件其实很少,大部分功能都要靠社区来提供。
这就导致了两个主要的问题:
1、插件质量良莠不齐,这点几乎是社区主导项目的通病;
2、Webpack 到目前为止历经 4 个大版本,每个版本几乎都是毁灭性升级,但社区插件甚至官方插件却不一定有能力随之升级。(中文的技术博客还喜欢抄,压根也不 care 版本问题,有时候辛辛苦苦找到了一个需要的插件,结果弄了半天,发现版本不适配)
社区项目其实都有这方面的通病。三大框架也是一样,你会发现三大框架里最优秀(功能丰富、API 合理、文档齐全、有测试用例)的那批插件或是组件库,几乎都是大公司主导的项目。个人开发又十分优秀的有没有?有,凤毛麟角。
包括三大框架本身也是如此。React 背靠 Facebook;Angular 由 Google 主导;连 Vue 的核心贡献者,打开 Github 一看,也都是某几个国际大厂的。
软件工程最重要的一条理论就是:没有 “银弹”。
“性能” 这个这个东西很难有一个万金油的,要不怎么叫 “调优” 呢?你得调,才能优。指望一键傻瓜,不太现实,在后端也一样。
另外 Webpack 是为了解决工程化问题的,不用它你不照样能开发?传统的徒手写 HTML + JS + CSS,不一样吗?没 Webpack 之前前端们难道不写代码了?
如果你一共四五个页面,也不存在大量 AJAX 数据交互的话,大可不必杀鸡用牛刀。
###你完全可以不用啊? 根据不同的 技术栈依赖、实际业务场景优化不可能是一成不变的,如果你的项目简单一些,就用一些默认配置啊!
###同意楼上观点 软件工程最重要的一条理论就是:没有 “银弹”。
其实什么叫做最优呢?举个例子,都说把图片合并或者 base64,可以减少请求呀之类。但是他有弊端吗?弊端就是文件体积增大了,而且还有缓存相关的问题。
本来只是图片显示的较慢,优化之后反而页面首屏变慢了。
这个其实挺头疼的,比如换个问题?我是前端我管它环境干嘛?我是后端我管它网络干嘛?我是设计我管它前端能不能实现?
再回过头来说, webpack 本身就是为了解决一些问题的,不使用也是可以的。如果只是为了一键使用可以使用入 vue-cli 之类的。
毕竟,薪资上去了,你自然愿意多搞点。