摘要:
前言:最近接触到一种新的(对我个人而言)状态管理方式,它没有采用现有的开源库,如redux、mobx等,也没有使用传统的useContext,而是用useState + useEffect写了一个发布订阅者模式进行状态管理,这一点对我来说感觉比较新奇,以前从没接触过这种写法,于是决定研究一下目前比较 阅读全文
摘要:
第一次发文章 not only(虽然)版式可能有点烂 but also (但是)最后赋有手稿研究 finally看完他你有收获 diff算法:对于update的组件,他会将当前组件与该组件在上次更新是对应的Fiber节点比较,将比较的结果生成新的Fiber节点。 ! 为了防止概念混淆,强调 一个DO 阅读全文
摘要:
如何避免组件的重新渲染? React 中最常见的问题之一是组件不必要地重新渲染。React 提供了两个方法,在这些情况下非常有用: React.memo():这可以防止不必要地重新渲染函数组件 PureComponent:这可以防止不必要地重新渲染类组件 这两种方法都依赖于对传递给组件的props的 阅读全文
摘要:
前言 不知道大家有没有过这个疑问,React 中 setState() 为什么是异步的?我一度认为 setState() 是同步的,知道它是异步的之后很是困惑,甚至期待 React 能出一个 setStateSync() 之类的 API。同样有此疑问的还有 MobX 的作者 Michel Wests 阅读全文
摘要:
High Order Component(包装组件,后面简称HOC),是React开发中提高组件复用性的高级技巧。HOC并不是React的API,他是根据React的特性形成的一种开发模式。 HOC具体上就是一个接受组件作为参数并返回一个新的组件的方法 const EnhancedComponent 阅读全文
摘要:
React声明组件有哪几种方法,有什么不同? React 声明组件的三种方式: 函数式定义的无状态组件 ES5原生方式React.createClass定义的组件 ES6形式的extends React.Component定义的组件 (1)无状态函数式组件 它是为了创建纯展示组件,这种组件只负责根据 阅读全文
摘要:
Redux可是一个大名鼎鼎的库,很多地方都在用,我也用了几年了,今天这篇文章就是自己来实现一个Redux,以便于深入理解他的原理。我们还是老套路,从基本的用法入手,然后自己实现一个Redux来替代源码的NPM包,但是功能保持不变。本文只会实现Redux的核心库,跟其他库的配合使用,比如React-R 阅读全文
摘要:
性能优化 性能优化,永远是面试的重点,性能优化对于 React 更加重要 在页面中使用了setTimout()、addEventListener()等,要及时在componentWillUnmount()中销毁 使用异步组件 使用 React-loadable 动态加载组件 shouldCompon 阅读全文
摘要:
可以使用TypeScript写React应用吗?怎么操作? (1)如果还未创建 Create React App 项目 直接创建一个具有 typescript 的 Create React App 项目: npx create-react-app demo --typescript (2)如果已经创 阅读全文
摘要:
提问:react项目中的JSX里,onChange={this.func.bind(this)}的写法,为什么要比非bind的func = () => {}的写法效率高? 声明: 由于本人水平有限,有考虑不周之处,或者出现错误的,请严格指出,小弟感激不尽。这是小弟第一篇文章,有啥潜规则不懂的,你们就 阅读全文