react 使用effect 的报错

1、像这种,根据someId值的改变,每次调用一次useEffect 的。如果在useEffect 加上async 则会出现报错

 正确的做法,则是去掉useEffect 上的async 

useEffect(() => {
  async function fetchData() {
    try {
      // 在这里进行异步操作
      const response = await MyAPI.getData(someId);
      // 处理数据
    } catch (error) {
      // 处理错误
    }
  }
  fetchData(); // 调用fetchData函数
}, [someId]); // 依赖于someId的变化

  

但是如果你的useEffect 的参数时空数组[],则没有影响

useEffect(async () => {
  async function fetchData() {
    try {
      // 在这里进行异步操作
      const response = await MyAPI.getData(someId);
      // 处理数据
    } catch (error) {
      // 处理错误
    }
  }
  await fetchData(); // 调用fetchData函数
}, []); // 依赖于someId的变化

  

posted @ 2024-04-18 10:53  信铁寒胜  阅读(6)  评论(0编辑  收藏  举报