0
votes

Réagir crochet usetate isaction n'est pas défini

Lorsque vous cliquez sur "Cliquez sur", la définition est indéfinie. Je dois manquer quelque chose d'évident. Toute idée?

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

function App() {
  const {isAction, setIsAction} = useState(false);

  useEffect(() => {
    if (isAction) {
      console.log('use effect');
    }
  }, [isAction, setIsAction]);

  return (
    <div
      onClick={() => {
        setIsAction(true);
      }}
    >
      click
    </div>
  );
}

export default App;


0 commentaires

4 Réponses :


1
votes

Modifier ceci: xxx

à xxx


0 commentaires

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

function App() {
  # need to change here just
  const [isAction, setIsAction] = useState(false); 

  useEffect(() => {
    if (isAction) {
      console.log('use effect');
    }
  }, [isAction, setIsAction]);

  return (
    <div
      onClick={() => {
        setIsAction(true);
      }}
    >
      click
    </div>
  );
}

export default App;

0 commentaires

4
votes

Usestate renvoie un tableau avec 2 articles. Vous essayez des objets de déstructuration, mais il doit être Array Destructurant .

const [isAction, setIsAction] = useState(false);


0 commentaires

0
votes

Vous êtes destructurant à la place USESTATE RETURN RETRAY avec 2 éléments. Modifiez ceci: xxx

à xxx

ex: xxx

J'ai modifié votre exemple pour obtenir un meilleur contexte. Vous pouvez trouver une démo ici: https://stackblitz.com/edit/react-stfhm5 < / p>


0 commentaires