首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
框架原理
订阅
奔跑的蜗牛233
更多收藏集
微信扫码分享
微信
新浪微博
QQ
56篇文章 · 0订阅
编写自定义webpack插件从理解Tapable开始
在上篇文章《Webpack源码解读:理清编译主流程》中,大体了解了webpack的编译主流程,其中我们跳过了一个重要内容Tapable。webpack 插件向第三方开发者提供了钩入webpack引擎中的编译流程的方式,而Tapable是插件的最核心基础。 本文首先分析Tapab…
Vue原理解析(八):一起搞明白令人头疼的diff算法
之前章节介绍了VNode如何生成真实Dom,这只是patch内首次渲染做的事,完成了一小部分功能而已,而它做的最重要的事情是当响应式触发时,让页面的重新渲染这一过程能高效完成。其实页面的重新渲染完全可以使用新生成的Dom去整个替换掉旧的Dom,然而这么做比较低效,所以就借助接下…
webpack4源码分析
tabpable是一个事件发布订阅插件,它支持同步和异步两种;在需要使用的类上继承tabpable,并且该类的构造函数中使用this.hooks添加事件名称。 要使用订阅功能,需要先拿到上面说到的类实例,通过实例对象.hooks.break.tap来订阅。 在需要触发的时机调用…
剖析 React 源码:组件更新流程二(diff 策略)
这是我的剖析 React 源码的第六篇文章。这篇文章连接上篇,将会带着大家学习组件更新过程相关的内容,并且尽可能的脱离源码来了解原理,降低大家的学习难度。 三篇文章并没有强相关性,当然还是推荐阅读下 前一篇文章。 组件更新归结到底还是 DOM 的更新。对于 React 来说,这…
8k字 | Redux/react-redux/redux中间件设计实现剖析
一. redux的实现 在一切开始之前,我们首先要回答一个问题:为什么我们需要redux,redux为我们解决了什么问题?只有回答了这个问题,我们才能把握redux的设计思路。 React作为一个组件化开发框架,组件之间存在大量通信,有时这些通信跨越多个组件,或者多个组件之间共…
前端路由简介以及vue-router实现原理
路由这个概念最先是后端出现的。在以前用模板引擎开发页面时,经常会看到这样 简单来说路由就是用来跟后端服务器进行交互的一种方式,通过不同的路径,来请求不同的资源,请求不同的页面是路由的其中一种功能。 1. hash 模式 随着 ajax 的流行,异步数据请求交互运行在不刷新浏览器…
Vue原理解析(四):你知道被大家聊烂了的虚拟Dom是怎么生成的吗?
在经过初始化阶段之后,即将开始组件的挂载,不过在挂载之前很有必要提一下虚拟Dom的概念。这个想必大家有所耳闻,我们知道vue@2.0开始引入了虚拟Dom,主要解决的问题是,大部分情况下可以降低使用JavaScript去操作跨线程的庞大Dom所需要的昂贵性能,让Dom操作的性能更…
Webpack 源码研究
将我的研究成果,画一个简要的流程图,如果您有兴趣看完,回头再看看这个流程图。 图片里的方块中文字的序号,就是运行的顺序。 通过我们以往对tapable的了解,知道可以通过钩子来监听Tapable类相应的事件,我们做相应的处理就行了。 写插件关键的问题不是注册钩子,而是compi…
Webpack源码分析(1)--之 流程总览
这就是整个过程了。
在浏览器中从URL输入到页面展现到底发生什么?
URL(Uniform Resource Locator),统一资源定位符,用于定位互联网上资源,俗称网址。 比如 http://www.w3school.com.cn/html/index.asp,遵守以下的语法规则: scheme:定义因特网服务的类型。常见的协议有 htt…