我刚开始想用Webpack打包HTML,结果折腾了好久,如下。
- 查了一圈发现是用这个插件:html-webpack-plugin;
- 然后发现HTML中<link>引用的外部CSS没打包出来,于是又查了应该用这个:style-ext-html-webpack-plugin;
- 结果这个插件好像Webpack 4.x不兼容,于是改用:mini-css-extract-plugin。
一开始没注意到文档说明还遇到版本兼容问题,也折腾半天:
我是初学者自学,折腾半天看各种plugin的文档终于弄好了。我想知道是我自己学习方法有问题?还是Webpack本来就是这么“混乱”?我如何知道那些plugin该怎么组合才好用?
其实没什么问题,现在前端工具体系已经非常庞大,功能丰富而又复杂,所以学习的时候不走一些弯路几乎是不可能的。这点任何语言都一样,学习语言本身很容易,但不够,必须理解并学会整个生态。
但我也不认为 webpack 本身是混乱的。因为技术环境本身就在飞速发展,作为底层工具的 webpack 也要不断进步。在演进过程当中有所取舍是必然的,无可厚非。而作为免费的开源产品,一个插件作者不想维护了,另一个插件作者站起来另起炉灶也是再正常不过的事情,作为普通使用者只有跟着学习和迁移。
所以,不是落花有意,也非流水无情,而是缘分未到呀。
当然我认为有更好的学习方法,就是学习别人的代码。比如在 Google 搜索
webpack.config.js site:github.com
,可以看到很多别人的配置,然后在 Tools 里选择“Past month”(最近一个月),可以看到最新版本的各种内容,这样会更容易建立感性的认知。还有就是平时注意观察别人项目的构成,看到一个前端项目,就看下它的打包工具、babel 配置等等,找个小本本记起来,这样当你需要的时候,可以找到参考。