エラー:<プロジェクトフォルダへのパス> / node_modules / @ babel / helper-compilation-targets 'のパッケージエクスポートは'。 'を定義していません サブパス


9

新しいプロジェクトフォルダーを作成し、次のコマンドを実行しました。

  • npm init
  • npm install express
  • npm install express-react-views react react-dom

高速インポートされたindex.jsとサンプルjsxファイルのビューを作成しました。localhostで実行すると、次のエラーが発生します。

Error: Package exports for '<path_to_project_folder>/node_modules/@babel/helper-compilation-targets' do not define a '.' subpath
    at applyExports (internal/modules/cjs/loader.js:485:15)
    at resolveExports (internal/modules/cjs/loader.js:508:12)
    at Function.Module._findPath (internal/modules/cjs/loader.js:577:20)
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:879:27)
    at Function.Module._load (internal/modules/cjs/loader.js:785:27)
    at Module.require (internal/modules/cjs/loader.js:956:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.<anonymous> (<path_to_project_folder>/node_modules/@babel/preset-env/lib/debug.js:8:33)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Module._compile (<path_to_project_folder>/node_modules/pirates/lib/index.js:99:24)

2019年10月に、同じ手順を実行してExpressアプリを作成しましたが、そのようなパッケージ(@ babel / helper-compilation-targets)がないことを確認し、問題なく実行されました。

何が悪いのかわかりません。誰かがアドバイスを手伝ってくれる?ありがとうございました!



推奨:クリーンキャッシュのnode_moduleおよびnode gypファイルを削除します。そして、ドキュメントフォルダに再インストールしてください。ノードがすべてのアクセス権を持つ場所。許可のため、一部の時間ノードは機能しません。rm -rf〜/ .npm && npm cache clear -f
xdeepakv

同じ問題が発生していますが、Laravel 6を新しくインストールしました。@xdeepakvあなたの提案された修正は私のためにそれをしませんでした。:(他のアイデアはありますか?
SupFrost

回答:


18

同じ問題があった。node.jsを更新すると修正されました


1
v12.14.1へのアップグレード、問題の修正、ありがとう
Zhang

6
13.0.1から13.6.0に更新すると、これが修正されました。THX!
Alexander Taubenkorb

2
ここでも働いた!ノードのアップグレード後にターミナルインスタンスを閉じ、ビルドする前に別のインスタンスを再度開くことを忘れないでください!そして、ところで、ノードを更新するコマンドはnvm install node(nvmがある場合、必要がない場合)
antoni

6

これはbabel v7.8.4で修正される予定です。https: //github.com/babel/babel/pull/11006を参照してください。新しいbabelリリースがカットされる前に、node.jsを> = 13.2.0にアップグレードしてください。これには、必要なアップストリーム修正が組み込まれています

12をNode.jsの注意をされていない、あなたがしていない限り、影響は手動に切り替え--experimental-modulesフラグ。その場合は、node.jsも> = 13.2.0にアップグレードしてください。


2

したがって、これはBabelとNode.jsの間の非互換性のようです。nvmnodejs 13にのみ影響を与えるため、一般的な解決策はnodejs 12に切り替えることです(たとえば、を使用している場合)。

nvm install 12
nvm use 12

しかし、私のRails 6アプリケーションでは、同じエラーが発生するため、これだけでは不十分でした。それに加えて、使用する予定のノードのバージョンをYarnに伝えることが必要でした。だから私はこれを追加しましたpackage.json

"engines": {
  "node": "12.14.1"
}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.