- webpack中loader配置,主要是为了解析node不认识的文件格式,包括但不限于.vue,.css,.jsx...,我们知道他是做什么的,我们就来自定义一个文件格式,就叫.test文件
- 写一点内容吧
- 那么我们想一想到底怎么样去自定义loader呢,需要做些什么呢,需要怎么做呢,我们先在webpack。config.js中,配置一个loader,来匹配.test结尾的文件
- 写到这里了,那么我们知道肯定需要这样一个js文件来对这个.test进行解析,那么我们选择在根目录下面创建一个loader文件,下面创建一个testTojs.js文件
- 里面的内容怎么写呢,首先我们是在写node.js脚本文件,肯定要遵循common.js的规范,那么我们就不能用es6的语法了,首先loader文件里面一定要返回一个结果,不然webpack只能拿到undefined
- 来解释一下上面的代码,上面的正则,是用来匹配里面的内容的,我们来分别打印source和str1分别是什么
- 我们可以看到source是.test文件里面所有的内容,这样我们就可以根据我们的需求去处理source,当然复杂的逻辑,肯定需要一些复杂的代码去处理,这里我们就是看一下,自定义loader的整个流程。然后我们使用正则匹配之后,获得了script标签中的文本内容,将它返回出去我们就拿到这个数据了,那么我们怎么测试呢,我们将这个项目打包生成了,bundle.js文件
- 随便创建一个html文件引入他
- 我们再打开这个html,看看.test文件里面的这个代码执行了没有
- 可以看到控制台是输出了这个代码
至此loader编写完成,主要是去理解一个loader怎么去工作的,一些复杂loader,也差不多这样运行的,只是逻辑复杂