摘要: 前言 React 为我们提供了一套虚拟的事件系统,这套虚拟事件系统是如何工作的,笔者对源码做了一次梳理,整理了下面的文档供大家参考。 在 React事件介绍 中介绍了合成事件对象以及为什么提供合成事件对象,主要原因是因为 React 想实现一个全浏览器的框架, 为了实现这种目标就需要提供全浏览器一致 阅读全文
posted @ 2022-11-04 09:47 夏天的味道123 阅读(183) 评论(0) 推荐(0)
摘要: 一、props的介绍 当React遇到的元素是用户自定义的组件,它会将JSX属性作为单个对象传递给该组件,这个对象称之为“props”。 函数声明的组件,会接受一个props形参,获取属性传递的参数 function ComponentA(props) { return <div>我是组件B:{pr 阅读全文
posted @ 2022-11-02 09:01 夏天的味道123 阅读(88) 评论(0) 推荐(0)
摘要: 在单页面应用如日中天发展的过程中,备受关注的少了前端路由。 而且还经常会被xxx面试官问到,什么是前端路由,它的原理的是什么,它是怎么实现,跳转不刷新页面的... 一大堆为什么,问你头都大 前言 今天主要讲的是: 原生js实现hashRouter 原生js实现historyRouter react- 阅读全文
posted @ 2022-11-02 09:00 夏天的味道123 阅读(80) 评论(0) 推荐(0)
摘要: 前言 阅读本文章需要对 React hooks 中 useState 和 useEffect 有基础的了解。我的这篇文章内有大致介绍 在 React 项目中全量使用 Hooks。 useCallback useCallback 的作用 官方文档: Pass an inline callback an 阅读全文
posted @ 2022-11-02 08:59 夏天的味道123 阅读(96) 评论(0) 推荐(0)
摘要: 一、Redux是什么? 众所周知,Redux最早运用于React框架中,是一个全局状态管理器。Redux解决了在开发过程中数据无限层层传递而引发的一系列问题,因此我们有必要来了解一下Redux到底是如何实现的? 二、Redux的核心思想? Redux主要分为几个部分:dispatch、reducer 阅读全文
posted @ 2022-10-31 09:28 夏天的味道123 阅读(61) 评论(0) 推荐(0)
摘要: 前言 这篇文章循序渐进地介绍实现以下几个概念,遵循本篇文章基本就能搞懂为啥需要fiber,为啥需要commit和phases、reconciliation阶段等原理。本篇文章又不完全和原文一致,这里会加入我自己的一些思考,比如经过performUnitOfWork处理后fiber tree和elem 阅读全文
posted @ 2022-10-31 09:27 夏天的味道123 阅读(20) 评论(0) 推荐(0)
摘要: 写在前面的小结 每一个 hook 函数都有对应的 hook 对象保存状态信息 useContext是唯一一个不需要添加到 hook 链表的 hook 函数 只有 useEffect、useLayoutEffect 以及 useImperativeHandle 这三个 hook 具有副作用,在 ren 阅读全文
posted @ 2022-10-31 09:25 夏天的味道123 阅读(50) 评论(0) 推荐(0)
摘要: Suspense 基本应用 Suspense 目前在 react 中一般配合 lazy 使用,当有一些组件需要动态加载(例如各种插件)时可以利用 lazy 方法来完成。其中 lazy 接受类型为 Promise<() => {default: ReactComponet}> 的参数,并将其包装为 r 阅读全文
posted @ 2022-10-29 12:25 夏天的味道123 阅读(41) 评论(0) 推荐(0)
摘要: 首先我们来看看下面的代码 import "react" from "react"; const element = (<div> <div> <span>1</span> <span>2</span> <span>3</span> </div> <div>1</div> <div>2</div> < 阅读全文
posted @ 2022-10-29 12:24 夏天的味道123 阅读(25) 评论(0) 推荐(0)
摘要: Context提供了一种不需要手动地通过props来层层传递的方式来传递数据。 正文 在典型的React应用中,数据是通过props,自上而下地传递给子组件的。但是对于被大量组件使用的固定类型的数据(比如说,本地的语言环境,UI主题等)来说,这么做就显得十分的累赘和笨拙。Context提供了一种在组 阅读全文
posted @ 2022-10-27 14:53 夏天的味道123 阅读(81) 评论(0) 推荐(0)