redux, appel de hook invalide. Les hooks ne peuvent être appelés que dans le corps du composant de fonction
P粉627027031
2023-09-06 00:35:35
<p>Lorsque je configure et utilise le <code>Provider</code> dans <code>root.render</code>, il m'affiche cette erreur : </p>
<blockquote>
<p>Avertissement : appel de crochet invalide. Les hooks ne peuvent être appelés qu’en interne
Le corps du composant fonctionnel. Cela peut se produire dans l'un des
Voici pourquoi : </p>
<ol>
<li>Vos versions de React et de votre moteur de rendu peuvent ne pas correspondre (par exemple, React DOM)</li>
<li>Vous enfreignez peut-être les règles Hooks</li>
<li>Vous pouvez avoir plusieurs copies de React dans la même application et TypeError n'est pas détecté : impossible de lire la propriété de null (lire 'useMemo') </li>
</ol>
</blockquote>
<p>C'est juste pour le composant <code>Provider</code>, si je ne l'appelle pas, je n'obtiens pas cette erreur. </p>
<pre class="brush:php;toolbar:false;">importer React depuis 'react';
importer ReactDOM depuis 'react-dom/client' ;
importer l'application depuis './App' ;
importer reportWebVitals depuis './reportWebVitals' ;
importer { Fournisseur } depuis 'react-redux' ;
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<Fournisseur>
<Application />
</Fournisseur>
);
reportWebVitals();</pre>
<p>J'ai désinstallé les packages redux et npm et les ai installés en utilisant la dernière version, mais j'ai le même problème. Certains disent que cela pourrait être dû au fait qu'il y a les mêmes noms dans les deux packages, ce qui perturbe l'ordinateur, mais je ne pense pas. </p>
Vous devez
store
传递给Provider