当前位置: 首页 > 知识库问答 >
问题:

React Hook useEffect缺少依赖项:“列表”

苏高旻
2023-03-14

一旦我运行下面的代码,我得到以下错误:

React Hook useEffect缺少依赖项:“list”。包括它或删除依赖项数组react hooks/dep

我找不到发出警告的理由。

import React, { useState, useEffect } from 'react';
import axios from 'axios';
import Form from './Form';

const App = () => {
  const [term, setTerm] = useState('pizza');
  const [list, setList] = useState([]);

  const submitSearch = e => {
    e.preventDefault();
    setTerm(e.target.elements.receiptName.value);
  };

  useEffect(() => {
    (async term => {
      const api_url = 'https://www.food2fork.com/api';
      const api_key = '<MY API KEY>';

      const response = await axios.get(
        `${api_url}/search?key=${api_key}&q=${term}&count=5`
      );

      setList(response.data.recipes);
      console.log(list);
    })(term);
  }, [term]);

  return (
    <div className="App">
      <header className="App-header">
        <h1 className="App-title">Recipe Search</h1>
      </header>
      <Form submitSearch={submitSearch} />
      {term}
    </div>
  );
};

export default App;

共有3个答案

糜宜民
2023-03-14

您可以通过插入注释来禁用此功能

//eslint禁用下一行

朱兴运
2023-03-14

您可以通过以下方式禁用棉绒警告:

// eslint-disable-next-line react-hooks/exhaustive-deps
}, [term]);
钱照
2023-03-14

在useEffect中,您正在记录列表

console.log(list);

因此,您要么需要删除上面的行,要么将list添加到最后的use效应依赖项中

}, [term]);

}, [term, list]);
 类似资料:
  • 我在构建我的应用程序时遇到此问题。有人知道怎么回事吗? React Hook useEffect缺少依赖项:“conectar”。包括它或删除依赖项数组react hooks/dep

  • 在我的反应/redux应用程序中,我使用调度来调用每次安装组件时从redux中的状态检索数据的操作。问题正在使用状态发生我的方式不工作 下面是我得到的错误: React Hook useEffect缺少依赖项:“dispatch”。包括它或删除依赖项数组。像“getInvoiceData”这样的外部作用域值不是有效的依赖项,因为对它们进行变异不会重新呈现组件react HOOK/DEP 这是我的密

  • 我试图在Tomcat服务器上部署一个基于spring的web应用程序,但我无法自动连接EntityManager。根本原因是错误。 我假设我有不正确的HibernateJAR作为依赖项。任何帮助都将不胜感激 我之前看到一篇帖子指出,问题在于包含了以下依赖项,但我不包括这一项: 以下是我的POM依赖项:

  • 我想更新商店中的值只有一次在第一次打开时,页面首次使用反应钩子打开。为此,我做了第二个参数的使用效果'[]'空列表。没有什么可以阻止它工作,但是我从ESLint规则中得到了一个警告:React Hook用效果有一个缺失的依赖项:“ChangeCount”。要么包含它,要么删除依赖数组react-追踪器/穷举-deps。如何删除此警告?

  • 我有一个图书馆项目。我想使用Android的新构建系统。目前我遇到了一个相当烦人的情况。 我在上定义了依赖项,但它们从未出现在Android Studio的外部库中。因此,对这些库的所有引用都被标记为错误。 更新 这个问题似乎在最新的Android Studio版本(0.2.5)上得到了修复

  • 我试图构建一个不和谐的应用程序,但由于某些原因,它无法访问JDA。错误如下: 编辑:这是我的POM: