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;
4 Réponses :
Modifier ceci: à p>
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;
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);
Vous êtes destructurant à la place USESTATE RETURN RETRAY avec 2 éléments. Modifiez ceci: à p> ex: p> J'ai modifié votre exemple pour obtenir un meilleur contexte. Vous pouvez trouver une démo ici: https://stackblitz.com/edit/react-stfhm5 < / p> p>