<p>トロイカはSSRを壊すようです</p>

作成日 2020年05月23日  ·  11コメント  ·  ソース: protectwise/troika

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

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

ノードに存在しないdocumentに依存しているようです。

トロイカを疑似同型にするために必要なのは、次のことだけだと思います。

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

これにより、ssrが正常に機能できるようになります。

全てのコメント11件

報告ありがとうございます。 SSR環境が実際にテキストをレンダリングしようとしないと仮定するのは正しいですか? 上記の提案された修正により、スクリプトモジュールの初期ロード時のエラーは防止されますが、後で実際にそのlinkElを使用しようとすると失敗するため、問題がないことを確認したいと思います。

1b005ecでうまくいくはずですが、0.26.0リリースを公開する前に、いくつかの検証を行うことで気分が良くなります。

はい、それは正しいです、それはただクラッシュしないでしょう。 一方、クライアントはすぐにビューを提示する機会があり、後で水分補給されます。

修正してくれてありがとう、試してもらいます...

私は先に進んで、その修正を含む0.26.0を公開しました。ノードの担当者でrequire()をテストした後、問題を修正する必要があると確信しています。 ユーザーの問題が解決しない場合は、これを再度開いてください。 ありがとう!

すごい! どうもありがとう、私も自分のものを再公開します。

おそらく関連して、私はnextjsを使用していますが、起動時に次のエラーが発生します。 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これはハードエラーではなくconsole.warnである必要がありますが、問題が発生していますか?

@gtolarcサーバーログでその警告メッセージが非常に煩わしいことがわかるので、ブラウザ以外の環境で警告メッセージを抑制しました:3dedb8f2b338e9345c107831863152b115ca50d2

その変更を加えて0.26.1を公開しました。

うん、他に問題は感じていない。 0.26.1では、警告メッセージが消えました。 ありがとう! @lojjic

申し訳ありませんが、これをもう一度開きます。 jestテストでconsole.warningがまだ表示されています。 とにかくこれを抑制する?

troika-worker-utilsでのWebワーカーの作成の失敗をコンソールログに記録する前に、プロセスenvが「テスト」であるかどうかを確認する小さなMRを開きました: https ://github.com/protectwise/troika/pull/85

このページは役に立ちましたか?
0 / 5 - 0 評価