随笔分类 - React源码
摘要:在 react 当中,主要创建更新的有三种方式 1、ReactDOM.render || hydrate 这两个api都是要把这个应用第一次渲染到我们页面上面,展现出来整个应用的样子的过程,这就是初始渲染 2、setState 3、forceUpdate ReactDOM.render 需要做哪些事
阅读全文
摘要:1、memo react 16.6 推出的 api ,他的用意是给 function component 也有 PureComponent 这样一个类似的功能,因为我们知道 PureComponent 提供了 class component 的组件类型,在 props 没有变化的情况下,他可以不重新
阅读全文
摘要:children是什么意思呢?就是我们拿到组件内部的props的时候,有props.children这么一个属性,大部分情况下,我们直接把 props.children 渲染到 JSX 里面就可以了。很少有情况我们需要去操作这个 children 。 但是如果一旦你需要去操作这个 children
阅读全文
摘要:我们先初步了解下 hooks,使用 useState 和 useEffect。 /** * 必须要react和react-dom 16.7以上 */ import React, { useState, useEffect } from 'react' export default () => { c
阅读全文
摘要:React 16.6 提供的一个新的开放一部分功能的 Suspense 代码 import React, { Suspense, lazy } from 'react' const LazyComp = lazy(() => import('./lazy.js')) let data = '' le
阅读全文
摘要:我们知道在react当中,组件与组件的沟通是通过props,父组件通过props给子组件传递一些属性,父组件可以传递一些回调函数给子组件,让子组件在某些特定的时候,可以调用父组件的一些特性。 但是我们会存在一个问题就是,react 的应用当中,组件和组件之间并不一定只有父子关系。他们还会存在着父子嵌
阅读全文
摘要:ref 的功能,在 react 当中。我们写了一个组件,在这个时候,我们的 render function 里面我们会渲染一系列的子组件或者 dom 节点,有时候我们会希望有这样的需求,就是我们要获取某个 dom 节点,或者是某个子组件的实例。去对他进行一些手动的操作,而不仅仅是 props 更新这
阅读全文
摘要:React中最重要的就是组件,写的更多的组件都是继承至 React.Component 。大部分同学可能都会认为 Component 这个base class 给我们提供了各种各样的功能。他帮助我们去运行了这个 render function 。然后最终把我们写在里面的 dom 标签或者子组件之类的
阅读全文
摘要:我们的JSX里面标签,属性,内容都会传递到React.createElement()这个方法里面。那么这个方法他到底有什么意义以及他的返回,我们叫他ReactElement。他到底有什么样的作用 /** * Copyright (c) Facebook, Inc. and its affiliate
阅读全文
摘要:在写react代码的时候,大部分同学应该都是写JSX。因为相比于写纯JavaScript。写JSX为我们去写组件,比写一些在JavaScript当中写类似于html结构的这种代码是要方便非常非常多的,他的可阅读性,可维护性都要高很多的。那么JSX他的魔力在哪里,能够让我们在JS里面写html代码。
阅读全文
摘要:git源码地址:https://github.com/facebook/react react 里面就是 react源码 react里面的react文件夹就是react源码,react源码非常的少,总共不到100行,ReactBaseClasses也就一百多行,react和react-dom加起来有
阅读全文
摘要:1、我又不写框架,为什么要学习源码 首先,如果你是react的使用者,从业务能力来说,学习源码毫无疑问会给你带来很大的提升,他能帮助你更好的理解,你写的代码是如何运行的,能在你遇到bug的时候,让你从底层去思考如何去解决问题,并且让你在开始项目之前,就想好更好的架构方式。 其次,react很多设计细
阅读全文