React useEffect



在发送请求后执行代码

useEffect(副作用函数,依赖项数组)

cpp 复制代码
import { useEffect, useState } from "react";

const URL =`http://geek.itheima.net/v1_0/channels`
function App() {
  // 创建状态数据
  const [list,setList] = useState([])
  const [count,setCount] = useState(0)

  useEffect(()=>{
    // 
    async function getList(){
      const res = await fetch(URL)
      const list = await res.json()
      console.log(list);
      setList(list.data.channels)
      console.log(`副作用函数执行`)
      

    }
    getList()
  })


 

  return (
    <div className="App">
      
      <ul>
        {list.map(item => <li key={item.id}>{item.name}</li>)}
      </ul>

      <button onClick={() => {setCount(count+1)}}>+{count}</button>
   
    </div>
  );
}

export default App;

当依赖项为空时,每一次请求和更新组件都会使得useEffect执行

有特定的依赖项

只有count作为依赖项

cpp 复制代码
 useEffect(()=>{
    // 
    async function getList(){
      const res = await fetch(URL)
      const list = await res.json()
      console.log(list);
      setList(list.data.channels)
      console.log(`副作用函数执行`)
      

    }
    getList()
  },[count])
相关推荐
子兮曰3 小时前
async/await高级模式:async迭代器、错误边界与并发控制
前端·javascript·github
恋猫de小郭3 小时前
2026 Flutter VS React Native ,同时在 AI 时代 VS Native 开发,你没见过的版本
android·前端·flutter
GIS之路5 小时前
ArcGIS Pro 中的 Notebooks 入门
前端
IT_陈寒6 小时前
React状态管理终极对决:Redux vs Context API谁更胜一筹?
前端·人工智能·后端
gxp1237 小时前
初学React:请求数据参数未更新 && 数据异步状态更新问题
react.js
Kagol7 小时前
TinyVue 支持 Skills 啦!现在你可以让 AI 使用 TinyVue 组件搭建项目
前端·agent·ai编程
柳杉7 小时前
从零打造 AI 全球趋势监测大屏
前端·javascript·aigc
simple_lau7 小时前
Cursor配置MasterGo MCP:一键读取设计稿生成高还原度前端代码
前端·javascript·vue.js
睡不着先生7 小时前
如何设计一个真正可扩展的表单生成器?
前端·javascript·vue.js
天蓝色的鱼鱼7 小时前
模块化与组件化:90%的前端开发者都没搞懂的本质区别
前端·架构·代码规范