次のようにトップレベルで「await」を使用すると:
リーリーターミナルに「set Experiments.topLevelAwait true」という警告が表示されます。 「tsconfig.json」に追加しようとしても、まだ機能しません。 「実験的な」プロパティは存在しないと表示されます。
async関数でラップすることもできるのですが、ラップ関数を使わずに設定したいのです。
P粉2629261952023-10-23 11:41:01
この記事の執筆時点でうまくいった最新の解決策は、SWC の代わりに Babel を使用することです。Next.js ではカスタム SWC 構成が許可されていないため、# 経由で topLevelAwait
を許可することはできません。 ##。 swcrc
ファイル。
という名前の Babel プラグインを
package.json に追加します。
が存在するプロジェクトのルート ディレクトリに .babelrc
ファイルを作成します。
プリセットと topLevelAwait
プラグインを .babelrc
に必ず含めてください。
P粉5415512302023-10-23 09:43:36
tsconfig.json とは関係ありません。 next.config.js で設定する必要があります。 next.js の新しいバージョンは、トップレベルの await をサポートする webpack5 を使用します。
リーリー ######知らせ######機能コンポーネントの外で使用する必要があります: リーリー 次の 13 件のアイテム
同じ設定が「pages」ディレクトリと「app」ディレクトリの「next」に適用されます: "^13.1.6"
。 (この機能は next.js 機能ではなく警告
実験的なものなので、バージョンによっては壊れる可能性があります