m-2443coding Ответов: 1

Как мне решить эту ошибку в моем коде?


//Я пытаюсь написать крестики-нолики с react-redux,но мой код в vscode не работает.
//это сообщение в терминале:

Реагировать useEffect крючок содержится призыв к 'инструкция setuser'. Без списка зависимостей,
это может привести к бесконечной цепи обновлений.
Чтобы исправить это, передайте [props.xisNext] в качестве второго аргумента крюку useEffect

Что я уже пробовал:

function Square(props){
    const [user,setuser]=useState(props.xisNext);
    function handleclick(){
      props.addPerson(props.id)
    }
    useEffect(()=>{
      setuser(props.xisNext)  
    })
  return(
    <button 
      onClick={handleclick}
    >{user[props.id]} 
    </button>
  )
}

1 Ответов

Рейтинг:
10

Sandeep Mewara

Взгляните на документацию: https://reactjs.org/docs/hooks-reference.html#conditionally-firing-an-effect[^]

Таким образом передайте его как:

useEffect(() => {
    setuser(props.xisNext)
  },
  [props.xisNext]
);