Razzle: Contoh Redux memiliki Peringatan HMR Penyedia

Dibuat pada 6 Okt 2017  ·  5Komentar  ·  Sumber: jaredpalmer/razzle

Reproduksi, git clone.
contoh cd/dengan-redux
benang
benang mulai

lalu ubah file apa saja, misalnya common/components/Counter.js, HMR akan berfungsi, tetapi browser akan membunyikan peringatan berikut

<Provider> does not support changing store on the fly. It is most likely that you see this error 
because you updated to Redux 2.x and React Redux 2.x which no longer hot reload reducers 
automatically. See https://github.com/reactjs/react-redux/releases/tag/v2.0.0 for the migration instructions.

Saya telah mencoba mencari kesalahan ini di Google, tetapi tidak menemukan solusi makanan untuk itu. Adakah yang berhasil mengatasi ini?

Komentar yang paling membantu

Tambahkan key={Math.random()} prop ke <Provider> . Ini harus memperbaiki peringatan ini.

Semua 5 komentar

Saya menambahkan kode berikut ke file client.js dan menghapus peringatan.

if (module.hot) {
  module.hot.accept();
  module.hot.accept('./App', () => {
    hydrate(
      <Provider store={store}>
        <BrowserRouter>
          <App />
        </BrowserRouter>
      </Provider>,
      document.getElementById('app')
    );
  });
}

Adakah yang punya pandangan tentang ini?

Bisakah Anda mengirimkan PR?

Tambahkan key={Math.random()} prop ke <Provider> . Ini harus memperbaiki peringatan ini.

Solusi @howwardya adalah yang lebih baik di sini. Menggunakan kunci acak membungkam peringatan tetapi tidak mengubah fakta bahwa toko sedang dibuat ulang pada setiap pembaruan, yang tidak didukung. Ini dapat menyebabkan beberapa perilaku miring, terutama jika Anda menggunakan redux dev-tools atau yang serupa.

Dengan secara khusus menangani modul ./App , yang akan menangkap hampir semua pembaruan kecuali untuk reduksi, yang sudah ditangani secara terpisah. Itu membuat perubahan pada configureStore.js dan client/index.js sendiri tidak tertangani. Anda dapat membiarkan catch-all, yang akan menjalankan kembali semuanya dan masih menyebabkan peringatan, atau menghapusnya, yang memicu pemuatan ulang halaman. Saya pikir yang terakhir akan lebih benar di sini.

Saya akan melihat membuat PR untuk ini.

Tambahkan key={Math.random()} prop ke <Provider> . Ini harus memperbaiki peringatan ini.

memecahkan masalah saya! Terima kasih sobat.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

krazyjakee picture krazyjakee  ·  3Komentar

Jayphen picture Jayphen  ·  4Komentar

corydeppen picture corydeppen  ·  3Komentar

sebmor picture sebmor  ·  4Komentar

pseudo-su picture pseudo-su  ·  3Komentar