React react-native-git-upgrade
を使用してネイティブプロジェクトをアップグレードした後、次のエラーが表示されます。
error: bundling failed: TypeError: Cannot read property 'bindings' of null
at Scope.moveBindingTo (/Users/jan/Startup/react-native/ordersome/node_modules/@babel/traverse/lib/scope/index.js:978:13)
at BlockScoping.updateScopeInfo (/Users/jan/Startup/react-native/ordersome/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:364:17)
at BlockScoping.run (/Users/jan/Startup/react-native/ordersome/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:330:12)
at PluginPass.BlockStatementSwitchStatementProgram (/Users/jan/Startup/react-native/ordersome/node_modules/babel-plugin-transform-es2015-block-scoping/lib/index.js:70:24)
at newFn (/Users/jan/Startup/react-native/ordersome/node_modules/@babel/traverse/lib/visitors.js:237:21)
at NodePath._call (/Users/jan/Startup/react-native/ordersome/node_modules/@babel/traverse/lib/path/context.js:65:20)
at NodePath.call (/Users/jan/Startup/react-native/ordersome/node_modules/@babel/traverse/lib/path/context.js:40:17)
at NodePath.visit (/Users/jan/Startup/react-native/ordersome/node_modules/@babel/traverse/lib/path/context.js:100:12)
at TraversalContext.visitQueue (/Users/jan/Startup/react-native/ordersome/node_modules/@babel/traverse/lib/context.js:142:16)
この問題はバベルと関係があるようです。シミュレーターと同様にmetroを再起動しましたが、それは何も変わりませんでした。また、ここにインストールしたすべてのパッケージがあり、これらはbabel(package.json)と関係があります。
"babel-eslint": "^8.2.5",
"babel-jest": "23.2.0",
"babel-preset-react-native": "4.0.0",
そして、これが私の.babelrc
です:
{
"presets": ["react-native"]
}
まだ0.55のときにreact-native init
を使用してプロジェクトを生成しました。
Package.jsonのforbabel-preset-react-native
のバージョンを次のように更新してください。
"babel-preset-react-native": "^5"
。
Npmjs.orgの babel-preset-react-native エントリによると、廃止されました。 metro-react-native-babel-preset は置換です。