React--useEffect

useEffect是一个ReactHook,用于处理副作用,如数据获取、订阅和事件监听。它接受一个回调函数和可选的依赖项数组。当依赖项变化时,回调函数会重新运行。在给定的例子中,useEffect在组件挂载后执行一次fetchData,避免了重复的数据请求。
摘要由CSDN通过智能技术生成

useEffect

useEffect 是 React 中的一个 Hook,用于在函数组件中进行副作用操作(如数据获取、订阅、事件监听等)。

语法:

useEffect(effect, dependencies)

使用 useEffect 的步骤如下:

  1. 在函数组件中调用 useEffect,并传入一个回调函数作为 effect。这个回调函数将会在组件渲染完成后执行。
  2. 可选地,传入一个依赖项数组作为第二个参数。依赖项数组表示什么情况下需要重新运行 effect。如果不传入依赖项数组,则 effect 每次组件重新渲染时都会执行;如果传入一个空数组 [],则 effect 只会在组件挂载和卸载时执行;如果传入依赖项数组,effect 将会在依赖项发生变化时执行。

使用场景:

数据获取、订阅、事件监听等

demo

import React, { useState, useEffect } from 'react';

function MyComponent() {
  const [data, setData] = useState(null);

  useEffect(() => {
    // 在组件渲染完成后执行的副作用操作
    fetchData();
  }, []);

  const fetchData = async () => {
    // 异步获取数据的逻辑
    const response = await fetch('https://api.example.com/data');
    const json = await response.json();
    setData(json);
  };

  return <div>{data ? <div>Data loaded</div> : <div>Loading...</div>}</div>;
}

可以看到,在上述代码中,我们在组件渲染完成后调用 useEffect,并传入一个空的依赖项数组 []。这意味着 fetchData 函数只会在组件第一次渲染时执行一次。这样可以避免重复获取数据。当依赖项数组中的值发生变化时,useEffect 将会重新运行。

good  luck !

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值