![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
react
文章平均质量分 61
月将明
这个作者很懒,什么都没留下…
展开
-
useEffect() 的无限循环陷阱
useEffect()用来引入具有「副作用」的操作,例如AJAX请求、DOM操作、启动与结束倒计时和监听与接触事件等,这些都可以在useEffect钩子去做。那么,是不是就真的那么简单的可以直接使用了呢?不是的,你可能会遇到一个陷阱,那就是组件渲染的无限循环,本文将为各位同学详细介绍无限循环的常见场景以及如何避免。副作用副作用指的是当调用函数时,除开返回函数值之外,还对主调用函数产生附加的影响。JS的部分内置函数是有副作用的,例如:[1,2,3].shift(); // 执行完shift函数后,原数据转载 2022-03-05 08:20:07 · 637 阅读 · 0 评论 -
useMemo和useCallback的区别 及使用场景
useMemo 和 useCallback 接收的参数都是一样,第一个参数为回调 第二个参数为要依赖的数据共同作用:1.仅仅 依赖数据 发生变化, 才会重新计算结果,也就是起到缓存的作用。两者区别:1.useMemo 计算结果是 return 回来的值, 主要用于 缓存计算结果的值 ,应用场景如: 需要 计算的状态2.useCallback 计算结果是 函数, 主要用于 缓存函数,应用场景如: 需要缓存的函数,因为函数式组件每次任何一个 state 的变化 整个组件 都会被重新刷新,一些函数是没有原创 2020-12-13 10:25:50 · 6220 阅读 · 0 评论 -
@connect在react-redux的运用
装饰器(Decorator)基本概念修饰器(Decorator)是一个函数,用来修改类的行为。不是很理解这种抽象概念,还是看代码讲解实际些。//定义一个函数,也就是定义一个Decorator,target参数就是传进来的Class。//这里是为类添加了一个静态属性 function testable(target) { target.isTestable = true; }//在Decorator后面跟着Class,Decorator是函数的话,怎么不是testable(MyTestab原创 2020-09-27 10:43:25 · 641 阅读 · 0 评论 -
React子组件和父组件通信
React子组件和父组件通信React子组件和父组件通信包括以下几个方面:1、子组件获取父组件属性:props或者state2、子组件调用父组件的方法3、父组件获取子组件的属性:props或者state4、父组件调用子组件的方法我们从下面这个例子来详细了解:父组件: 1 var Father=React.createClass({ 2 getDefaultProps:function(){ 3 return { 4 name:"父组件"原创 2020-09-24 17:42:26 · 635 阅读 · 0 评论 -
react-router中,<switch>标签存在意义说明
有标签,则其中的在路径相同的情况下,只匹配第一个,这个可以避免重复匹配;为了更好地匹配规则,轻易不要舍弃。原创 2020-09-01 09:20:07 · 463 阅读 · 0 评论 -
DvaJS中的Subscription
简介:subscriptions是订阅,用于订阅一个数据源,然后根据需要dispatch相应的action。数据源可以是当前的时间、服务器的websocket连接、keyboard输入、geolocation变化、history路由变化等等。格式为({ dispatch, history }) => unsubscribe。subscripition的用法:异步数据初始化:比如:当用户进入 /users 页面时,触发action users/fetch 加载用户数据。app.model({原创 2020-08-27 09:43:57 · 1029 阅读 · 0 评论 -
react全局事件传递
废话不多说,上代码import React, { PureComponent } from 'react';// 在组件库中导入相关类import { EventEmitter } from 'events';// 创建事件总线const eventBus = new EventEmitter();class Home extends PureComponent { // 添加事件监听 componentDidMount() { // 监听的事件名称 eventBus原创 2020-08-23 10:21:21 · 838 阅读 · 0 评论