摘要: 1.node 本身不支持es module语法,需要使用 --experimental-module 来开启,而且会提示它是实验性质的,所以最好还是使用babel node --experimental-module xx.mjs 文件名必须是mjs 才能使用. 阅读全文
posted @ 2019-04-14 23:30 菜鸟木易 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 如何编写一个loader , loader 是链式调用的,从右往左调用,后写的先调用,调用时传入源码,返回源码的形式 如何编写一个 plugin plugin 的原理是监听webpack 各个生命周期的构子函数执行一些操作。 详细文档如下: https://www.webpackjs.com/con 阅读全文
posted @ 2019-04-14 23:16 菜鸟木易 阅读(336) 评论(0) 推荐(0) 编辑
摘要: babel 实际上是一个平台和postcss一样的平台,它只负责将js 转换成 AST 抽象语法树,实际怎么转换语法需要plugin 去做。 babel 做了如下三件事 1.将js 源码转换成AST 语法树 2.通过插件修改AST语法树 3.将AST语法树转换成js 源码 其实我们自己也可以实现一个 阅读全文
posted @ 2019-04-14 22:33 菜鸟木易 阅读(361) 评论(0) 推荐(0) 编辑
摘要: css 处理插件大致分为压缩css和给css添加浏览器兼容前缀。 cssmin 可以压缩css,大致原理是将使用正则将css 中的注释和空格删除。 px2rem 插件是将css 中的px 转换为 rem,它的原理是 调用了css 的AST对象 ,css插件将css内容解析成 一个javascript 阅读全文
posted @ 2019-04-14 17:16 菜鸟木易 阅读(2348) 评论(0) 推荐(0) 编辑