Apabila saya menyediakan dan menggunakan root.render, ia menunjukkan kepada saya ralat ini:
Amaran: Panggilan cangkuk tidak sah. Cangkuk hanya boleh dipanggil secara dalaman Badan komponen fungsi. Ini mungkin berlaku dalam salah satu daripada Inilah sebabnya:
- Versi React dan pemapar anda mungkin tidak sepadan (cth. React DOM)
- Anda mungkin melanggar peraturan Hooks
- Anda mungkin mempunyai berbilang salinan React dalam apl yang sama dan TypeError tidak ditangkap: Tidak dapat membaca sifat null (baca 'useMemo')
Ia hanya untuk komponen
import React daripada 'react'; import ReactDOM daripada 'react-dom/client'; import Apl daripada './App'; import reportWebVitals daripada './reportWebVitals'; import { Provider } daripada 'react-redux'; const root = ReactDOM.createRoot(document.getElementById('root')); root.render( ); reportWebVitals(); Saya menyahpasang pakej redux dan npm dan memasangnya menggunakan versi terkini, tetapi saya menghadapi masalah yang sama. Ada yang mengatakan mungkin kerana terdapat nama yang sama dalam kedua-dua pakej, yang mengelirukan komputer, tetapi saya tidak fikir begitu.
Anda perlu
store传递给Providerimport React from 'react'; import ReactDOM from 'react-dom/client'; import App from './App'; import reportWebVitals from './reportWebVitals'; import { Provider } from 'react-redux'; import store from "./path/to/store" const root = ReactDOM.createRoot(document.getElementById('root')); root.render( ); reportWebVitals();