首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
前端
snakeshe1010
创建于2021-09-09
订阅专栏
专门存放前端知识
等 2 人订阅
共38篇文章
创建于2021-09-09
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
深入理解 React 中 useEffect 的 cleanUp 机制
通过本文的介绍,我们深入探讨了 React 中 `useEffect` 的 cleanUp 机制。`useEffect` 的 cleanUp 逻辑是 React 内部实现的关键部分
7-2. 实现 cleanup
本节课我们来实现一下useEffect中的cleanUp,它会再调用useEffect之前调用,目的是清空所有副作用,当deps为空的时候不会调用cleanUp。 app.js cleanUp的存放,
实现 Mini-React 的 useEffect 钩子
实现 Mini-React 的 useEffect 钩子:从单次执行到依赖追踪 内容概括: 本文实现了 Mini-React 的 useEffect 钩子,首先处理无依赖项的基本回调执行,通过在 co
1. 实现 useEffect
本次课程我们来开始实现一下mini-react中的useEffect。我们先来是先最简单的,没有依赖的情况。 在app.js加上useEffect 创建函数,先存起来参数 调用时机 应该在dom的渲染
优化Mini React:避免状态未变更时的重复渲染
通过增强useState的setState函数,在状态更新前进行精准值比较(使用Object.is),当新状态与当前状态相同时直接中止更新流程。这一优化解决了设置相同状态值仍触发重渲染的问题
用100行代码实现React useState钩子:多状态管理揭秘
本文通过50行代码实现了React useState的核心逻辑,解决了多状态管理的核心挑战。关键在于使用数组结构和索引追踪来维护多个状态钩子,保证状态更新的准确性和隔离性。
mini-react 实现组件更新与删除机制详解
本文讲解了在 mini-react 中实现组件更新和删除的过程。通过比较旧新节点的 type 实现替换策略,借助 deletions 队列实现统一删除,并对函数组件做了特殊处理
深入浅出:手把手实现Mini-React中的Props更新机制
本文实现了Mini-React的props更新机制:1) 通过currentRoot记录当前树;2) 使用alternate对比新旧节点;3) 在commit阶段根据effectTag执行DOM操作
9.update props
这节课我们来实现一下mini-react中的更新props。 第一步. 我们需要得到新的Dom树 更新想要获得Dom树可以和初始化一样通过render函数 但是这里更新,需要知道自动root和cont
深入浅出:在 mini-react 中实现事件绑定系统
本文介绍了在 mini - react 中实现事件绑定的方法。首先在 Counter 组件中添加了点击事件,并通过打印 Fiber 来观察 DOM 结构。
8. 实现事件绑定
本节课我们来实现给我们的mini-react项目添加绑定事件。 先在app.jsx中添加click事件 通过打印,观察一下fiber中的button,方便后续处理 1.png 于是我们就想只要是on开
React Fiber架构下函数组件与宿主组件的差异化渲染优化
通过将函数组件与宿主组件的处理逻辑解耦,我们实现了更清晰的代码结构和更高的可维护性。函数组件专注执行函数获取虚拟节点,宿主组件负责DOM操作
从零实现React函数组件支持:核心原理与实现过程
本文将手把手实现React框架对函数组件的支持,揭示其核心运行原理。通过实现函数组件渲染、props传递和多组件支持,深入理解虚拟DOM和协调机制。
手把手参与 Ant Design 开源贡献:从认领 Issue 到提交 PR 全指南
本文系统梳理了参与 Ant Design 开源贡献的全流程,涵盖文档解读、任务认领、本地开发调试与 PR 提交规范。重点解析了测试驱动开发模式下的快照更新技巧,以及通过强制推送、版本分支选择等。
4. 实现 fiber 架构
目标: 实现fiber架构 如何控制dom树的渲染 期望每一次渲染一个dom,实现完成之后检测还剩下多少空余时间,如果足够渲染另一个dom 我们通过链表来实现,1. 找child节点 2. 找sibl
3. 实现任务调度器
目标:实现任务调度器 为什么要实现任务调度器 dom特别大的时候会造成渲染卡顿 看一个demo,代码如下,卡顿原因,js执行是单线程的,while循环逻辑会阻塞后面渲染 main.js index.h
02-使用 jsx
目标:让之前的mini-react使用jsx 安装vite 将之前的App.js,core文件夹,main.js拷贝进去,并将App.js修改成App.jsx 修改index.html中的路径和id
在Mini-React中实现JSX支持:从环境搭建到组件化实践
本文记录了为自研Mini-React框架添加JSX支持的完整过程:通过Vite搭建开发环境,验证JSX编译机制,改造现有组件代码,并分析当前组件化支持的局限。
01-实现最简mini-react
目标:使用和react一样的api在页面渲染字符 先看下react的Api写法 main.jsx App.jsx 开始我们的写法 从最简单的版本开始 新建my-react项目文件夹 新建index.h
从零实现React核心API:渲染字符串到页面
本文从零实现了React核心渲染逻辑,通过四步递进式开发:1)基础DOM操作 2)虚拟DOM设计 3)动态元素创建 4)递归渲染架构。最终实现了与React相似的API调用方式。
下一页