Next.js: [9.5.3] modules.scssのNext / _error.jsxスタイルが機能しない

作成日 2020年09月08日  ·  3コメント  ·  ソース: vercel/next.js

バグレポート

バグを説明する

9.5.3(9.5.2では正常に動作)以降、カスタムエラーページのスタイルが壊れています

再現するには

スタイリングにsassを使用する

カスタムエラーページ_error.jsx(私の場合はtsx)を作成します

実際のエラーページを表示するためにビルドし、エラーを作成する必要があります
(ヤーンビルド&&ヤーンスタート)

エラーページでは、グローバルスタイルは正常に機能します
ただし、メインのエラーページやインポートされたコンポーネントでも、すべてのmodule.scssが壊れています。

システムインフォメーション

  • sass:1.26.10
  • OS:[macOS catalina || ubuntu 18.04 lts]
  • Node.jsのバージョン:[v10.22.0 || v13.14.0]
bug 3 needs investigation

最も参考になるコメント

こんにちは、私も同じです。
これが再現するアプリの例です。 これがお役に立てば幸いです。

https://github.com/TasukuUno/repro-nextjs-16931

全てのコメント3件

こんにちは、私も同じです。
これが再現するアプリの例です。 これがお役に立てば幸いです。

https://github.com/TasukuUno/repro-nextjs-16931

これをローカルでデバッグしようとすると、 getCssLinks提供されたパスのいずれにも、cssモジュールからcssファイルへのパスが含まれていないことがわかります。

https://github.com/vercel/next.js/blob/b2d1d87e7feed5535a05ec99d7558934dcbc82a5/packages/next/pages/_document.tsx#L160

さかのぼると、この行がgetDocumentFilesに表示されます。これは、問題の原因の適切な候補である可能性があります。

https://github.com/vercel/next.js/blob/b2d1d87e7feed5535a05ec99d7558934dcbc82a5/packages/next/pages/_document.tsx#L59

しかし、その行は2か月前にhttps://github.com/vercel/next.js/commit/9fcf39acd45966d8a6c362bec62e49a53dcd8581で変更されましたgetPageFilesに到達します。最後の変更は、 ここが原因である可能性がありますか? 意図を判断するのは難しいですが、これらの修正により、CSSパスを取得するために必要なデータの契約が破られた可能性がありますか?

https://github.com/vercel/next.js/blob/3597978d7f121f11df99cd7cd757e1eb9868fff7/packages/next/next-server/server/render.tsx#L685 -L701

上記がコミット3597978で導入され

ここに回避策があります: https

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