《玩转webpack》第六章 原理篇: 通过源码掌握 webpack 打包原理Hook(钩子)类,为插件提供挂载的钩子 Tapable hooks 类型 Tapable 的使用 -new Hook 新建钩子 Tapable 暴露出来的都是类方法,new 一个类方法获得我们需要的钩子 class 接受数组参数 options ,非必传。类方法会根据传参,接受同样数量的参数。 const hook1 = new SyncHook(["arg1", "arg2", "arg3"]); Tapable 在线demo: https://esprima.org/demo/parse.html 复习一下 webpack 的模块机制 · 打包出来的是一个 IIFE (匿名闭包) · modules 是一个数组,每一项是一个模块初始化函数 · 通过 WEBPACK_REQUIRE_METHOD(0) 启动程序 · __webpack_require 用来加载模块,返回 module.exports 动手实现一个简易的0 码力 | 39 页 | 3.66 MB | 1 年前3
《玩转webpack》第七章 原理篇: 编写 Loader 和插件'style-loader', + 'css-loader', + ' less-loader' + ] + } + ] + } }; 函数组合的两种情况 Unix 中的 pipline Compose(webpack采取的是这种) compose = (f, g) => (...args) => f(g(...args)); 通过一个例子验证0 码力 | 29 页 | 4.37 MB | 1 年前3
《玩转webpack》 第二章 基础篇: webpack 基础用法'bundle.js' }, plugins: [ new HtmlWebpackPlugin({template: './src/index.html'}) ] }; 放到 plugins 数组⾥里里 核⼼心概念之 Mode Mode ⽤用来指定当前的构建环境是:production、development 还是 none 设置 mode 可以使⽤用 webpack 内置的函数,默认值为0 码力 | 41 页 | 2.52 MB | 1 年前3
《玩转webpack》 第三章 基础篇 Webpack 进阶用法会被转换成 __webpack_require 模块 模块初始化函数 进⼀一步分析 webpack 的模块机制 分析: · 打包出来的是⼀一个 IIFE (匿匿名闭包) · modules 是⼀一个数组,每⼀一项是⼀一个模块初始化函数 · 通过 WEBPACK_REQUIRE_METHOD(0) 启动程序 · __webpack_require ⽤用来加载模块,返回 module.exports0 码力 | 69 页 | 4.33 MB | 1 年前3
共 4 条
- 1













