2017-12-12 12 views
2

bable/runtime/helpersでinteropRequireDefaultを解決できない理由を理解してください。私はバベルをアップグレードしたばかりで、バベル7.0.0に依存関係を明示的に移動しようとしました。私の知る限りでは、ブラウザが、babelrcファイルの中で提供されている "プラグイン"から最新のbabelをサポートするものとして検出されていないかどうかを理解しています。webpackをbabel7にアップグレードするwebpack3

errがある:モジュールのビルドに失敗しました:例外TypeError:私のバベル-ローダーは間違いなくファイルを呼び出し、コンパイルを開始している、ヌル

のプロパティ「バインディング」を読み取ることができません。他の設定やトラバースのプロセスを指定する必要はありますか?

devDependencies

"devDependencies": { 
"@babel/cli": "^7.0.0-beta.34", 
"@babel/plugin-syntax-dynamic-import": "7.0.0-beta.34", 
"@babel/plugin-syntax-export-default-from": "7.0.0-beta.34", 
"@babel/plugin-syntax-export-namespace-from": "7.0.0-beta.34", 
"@babel/plugin-transform-runtime": "^7.0.0-beta.34", 
"@babel/plugin-transform-strict-mode": "7.0.0-beta.34", 
"@babel/preset-react": "^7.0.0-beta.34", 

babelrc

"presets": [ 
    "latest", 
    "react", 
    ], 
    "plugins": [ 
    "@babel/plugin-syntax-export-default-from", 
    "@babel/plugin-syntax-export-namespace-from", 
    "@babel/plugin-transform-runtime", 
    "@babel/plugin-syntax-object-rest-spread", 
    "@babel/plugin-syntax-dynamic-import", 
    "@babel/plugin-transform-strict-mode", 
    ], 

babel-preset-envの賛成で廃止されましたあなたはbabel-preset-latestを使用している

at Scope.moveBindingTo (/node_modules/babel-core/node_modules/babel-traverse/lib/scope/index.js:939:12) 
at BlockScoping.updateScopeInfo (/node_modules/babel-preset-es2015/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:364:17) 
at BlockScoping.run (node_modules/babel-preset-es2015/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:330:12) 
at PluginPass.BlockStatementSwitchStatementProgram (node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:70:24) 

答えて

3

errは、(バベル7のためには、NPMに@babel/preset-envです) 。 latestプリセットは少し撤廃され、Babel 7は完全に削除しました。使用しているプリセットはBabel 6用で、Babel 7と互換性がありません。

@babel/preset-envに移行する必要があります。

npm install --save-dev @babel/preset-env 

envプリセット

だけがターゲットブラウザでサポートされていない機能を変換するように構成することができますが、あなたは .babelrcでそれを置き換えることができるように設定がなくても、それは、まさに latestプリセットのように振る舞います。また、設定にあらかじめ設定されている react@babel/preset-reactである必要があります。

"presets": [ 
    "@babel/preset-env", 
    "@babel/preset-react" 
], 
関連する問題