<p>troika sepertinya merusak SSR</p>

Dibuat pada 23 Mei 2020  ·  11Komentar  ·  Sumber: protectwise/troika

https://github.com/react-spring/drei/issues/25

https://github.com/react-spring/drei/issues/23

tampaknya bergantung pada document , yang tidak ada di node.js.

saya percaya untuk membuat troika pseudo-isomorfik yang harus dilakukan adalah:

const linkEl = typeof document !== 'undefined' && document.createElement('a')

ini akan memungkinkan ssr berfungsi secara normal.

Semua 11 komentar

Terima kasih atas laporannya. Apakah saya benar dengan asumsi bahwa lingkungan SSR tidak akan benar-benar mencoba untuk membuat teks? Perbaikan yang disarankan di atas akan mencegah kesalahan pada pemuatan modul skrip awal, tetapi akan gagal nanti ketika benar-benar mencoba menggunakannya linkEl , jadi saya ingin memastikan itu bukan masalah.

1b005ec harus melakukan trik, tetapi saya akan merasa lebih baik dengan beberapa verifikasi sebelum saya menerbitkan rilis 0.26.0.

Ya itu benar, itu tidak akan crash. Klien di sisi lain memiliki kesempatan untuk menyajikan tampilan segera dan itu direhidrasi nanti.

Saya akan meminta mereka untuk mencobanya, terima kasih atas perbaikannya ...

Saya telah melanjutkan dan menerbitkan 0.26.0 dengan perbaikan itu, saya cukup yakin itu harus memperbaiki masalah setelah mengujinya dengan require() -ing di node repl. Silakan buka kembali ini jika tidak menyelesaikan masalah bagi pengguna Anda. Terima kasih!

itu luar biasa! terima kasih banyak, saya akan menerbitkan kembali barang-barang saya juga.

Mungkin terkait, saya menggunakan nextjs dan kesalahan berikut terjadi saat startup. pada v0.26

Troika createWorkerModule: web workers not allowed in current environment; falling back to main thread execution. ReferenceError: Worker is not defined
    at supportsWorkers (/Users/mk/dev/workspace/dapps/gione/node_modules/troika-worker-utils/dist/troika-worker-utils.umd.js:417:20)
    at defineWorkerModule (/Users/mk/dev/workspace/dapps/gione/node_modules/troika-worker-utils/dist/troika-worker-utils.umd.js:472:10)
    at /Users/mk/dev/workspace/dapps/gione/node_modules/troika-worker-utils/dist/troika-worker-utils.umd.js:606:30
    at /Users/mk/dev/workspace/dapps/gione/node_modules/troika-worker-utils/dist/troika-worker-utils.umd.js:2:66
    at Object.<anonymous> (/Users/mk/dev/workspace/dapps/gione/node_modules/troika-worker-utils/dist/troika-worker-utils.umd.js:5:2)

@gtolarc Itu seharusnya hanya console.warn bukan kesalahan yang sulit, apakah itu menyebabkan masalah?

@gtolarc Saya dapat melihat bagaimana pesan peringatan itu akan sangat mengganggu di log server, jadi saya telah melanjutkan dan menyembunyikannya di lingkungan non-browser: 3dedb8f2b338e9345c107831863152b115ca50d2

Saya telah menerbitkan 0.26.1 dengan perubahan itu.

ya, saya belum merasakan masalah lain. dan di 0.26.1, pesan peringatan menghilang. Terima kasih! @lojjic

Maaf, untuk membuka ini lagi. Saya masih melihat console.warning dalam tes lelucon saya. Pokoknya untuk menekan ini?

Saya membuka MR kecil yang memeriksa apakah proses env adalah 'tes' sebelum konsol mencatat kegagalan dalam membuat pekerja web di troika-worker-utils: https://github.com/protectwise/troika/pull/85

Apakah halaman ini membantu?
0 / 5 - 0 peringkat