首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
冲鸭
订阅
Tudyera
更多收藏集
微信扫码分享
微信
新浪微博
QQ
49篇文章 · 0订阅
脑壳疼的Webpack-tapable
Q1:tapable解决的问题?tapable是个独立的库webpack中大量使用了这个库tapable主要是用来处理事件,解决的问题有点类似EventEmitter,不过功能更加强大Q2:tapab
webpack系列之二Tapable
上一篇总览 我们介绍了 webpack 整体的编译过程,这次就来分析下基础的 Tapable。 webpack 整个编译过程中暴露出来大量的 Hook 供内部/外部插件使用,同时支持扩展各种插件,而内部处理的代码,也依赖于 Hook 和插件,这部分的功能就依赖于 Tapable…
webpack事件流之Tapable
webpack整个构建周期,会涉及很多个阶段,每个阶段都对应着一些节点,这些节点就是我们常说的钩子,每一个钩子上挂载着一些插件,可以说整个webpack生态系统是由一系列的插件组成的。当主构建流程进行编译打包的时候,会陆续触发一些钩子的call方法(相当于emitter),相应…
webpack 4 源码主流程分析(十二):打包后文件解析
以 前言及总流程概览 里的 demo 为例, 前十一张章分析了打包过程,现在来分析它打包后的文件。 @fe_korey/test-loader 是一个测试 loader,该 loader 作用为代码里的字符串 10000 替换为传入的 number。 入口文件,该文件名根据配置…
webpack 4 源码主流程分析(三):编译前的准备
该类主要对文件系统做了一些封装,包括输入,输出,缓存,监听等等,这些扩展后的方法全部挂载在 compiler 对象下。 在这里,会把 compiler 实例传进去供 plugin 使用,compiler 包含整个构建流程的全部钩子,通过它可以把控整个 webpack 构建周期。…
Webpack源码解读:理清编译主流程
webpack的熟练使用已成为当代前端工程师必备的生存技能。毋庸置疑,webpack已成为前端构建工具的佼佼者,网络上关于如何使用webpack的技术文档层出不穷。但鲜有能将webpack的构建流程讲清楚的。本文尝试从解读源码以及断点调试的方式,来探究 webpack 是如何一…
webpack构建流程及梳理
webpack的核心功能是通过抽离出很多插件来实现的,因此系统内功能的划分粒度很细,这样做到了完美解偶同时又分工明确,代码容易维护。可以说插件就是webpack的基石,这些基石又影响着流程的走向。这些钩子是通过Tapable串起来的,可以类比Vue框架的生命周期,webpack…
嘿,不要给 async 函数写那么多 try/catch 了
另外可以发现并不是一个 token 对应一个 Node,等号左右必须都有值才能组成一个声明语句,否则会作出警告,这就是 eslint 的基本原理。最后所有的 Node 组合在一起就形成了 AST 语法树 通过 @babel/traverse 我们能够轻松的找到 await 表达…
字节跳动面试官,我也实现了大文件上传和断点续传
window.requestIdleCallback()方法将在浏览器的空闲时段内调用的函数排队。这使开发者能够在主事件循环上执行后台和低优先级工作 该图中的两个帧,在每一帧内部,TASK和redering只花费了一部分时间,并没有占据整个帧,那么这个时候,如图中idle pe…
九种跨域方式实现原理(完整版)
前后端数据交互经常会碰到请求跨域,什么是跨域,以及有哪几种跨域方式,这是本文要探讨的内容。 本文完整的源代码请猛戳github博客,纸上得来终觉浅,建议大家动手敲敲代码。 同源策略是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSR…