Babel Unknown选项:.caller

Alp*_*nse 5 babel reactjs babeljs react-native babel-jest

当我运行npm start babel抛出以下错误:ReferenceError:未知选项:.caller.查看http://babeljs.io/docs/usage/options/了解有关选项的更多信息.

我的package.json:

{
"private": true,
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest"
  },
  "dependencies": {
    "axios": "^0.18.0",
    "moment": "^2.20.1",
    "prop-types": "latest",
    "react": "^16.5",
    "react-native": "^0.57",
    "react-native-material-textfield": "^0.12.0",
    "react-native-material-ui": "^1.30.1",
    "react-native-off-canvas-menu": "^0.1.32",
    "react-native-pull-refresh": "^1.0.0",
    "react-native-size-matters": "^0.1.4",
    "react-native-snackbar": "^0.5.3",
    "react-native-snap-carousel": "^3.7.5",
    "react-native-vector-icons": "^6.0.2",
    "react-navigation": "^2.18.0",
    "react-redux": "^5.0.6",
    "redux": "^4.0.1",
    "redux-persist": "^5.5.0",
    "redux-thunk": "^2.2.0",
    "ree-validate": "^3.0.2"
  },
  "devDependencies": {
    "@babel/core": "7.0.0-beta.42",
    "babel-jest": "23.6.0",
    "jest": "23.6.0",
    "metro-react-native-babel-preset": "^0.48.1",
    "react-test-renderer": "16.5.2"
  },
  "jest": {
    "preset": "react-native"
  },
  "rnpm": {
    "assets": [
      "./src/assets/fonts"
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

我提到我的项目是反应原生应用程序.我没有对等依赖项错误.我没有发现不同的babel依赖关系之间的任何冲突.谢谢您的帮助.

Flo*_*bre 7

根据RN 0.57更改日志,您需要:

确保您拥有版本^ 7.0.0的所有babel依赖项(您可能还需要添加babel-core":"7.0.0-bridge.0"作为纱线分辨率以确保复古兼容性)

看来你@babel/core": "7.0.0-beta.42没有^7.0.0.

这是在RN 0.57.1​​和0.57.2中为我工作的配置:https://stackoverflow.com/a/52717426/1979861

还要.babelrc根据RN change.log 检查文件.

在任何时候,如果你得到一些babel错误,你可以尝试用这样的东西清理所有缓存(使用纱线或npm,取决于你有什么):

rm -rf $TMPDIR/react-* && rm -rf $TMPDIR/metro-* && rm -rf $TMPDIR/haste-* && watchman watch-del-all && rm -rf node_modules && yarn install && npm start -- --reset-cache 
Run Code Online (Sandbox Code Playgroud)