如何在反应原生应用程序中解决此错误?

Posted

技术标签:

【中文标题】如何在反应原生应用程序中解决此错误?【英文标题】:How to solve this error in react native app? 【发布时间】:2019-08-07 21:33:56 【问题描述】:

现在我正在尝试在 react native 和 expo 中制作一个应用程序。 昨天我还好好的,但是今天当我开始 expo 时,我得到了这个错误。

TypeError: undefined is not an object(evalating 'this._callListeners.bind')

我认为这个问题是基于 react-navigation、expo 或其他版本。

这是我下面的 package.json

"dependencies": 
    "@expo/vector-icons": "^9.0.0",
    "expo": "^32.0.0",
    "expo-cli": "^2.11.9",
    "firebase": "^4.12.1",
    "mobx": "^5.8.0",
    "mobx-react": "^5.4.3",
    "react": "16.5.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-32.0.0.tar.gz",
    "react-native-maps": "^0.23.0",
    "react-native-modal": "^7.0.2",
    "react-native-vector-icons": "^6.1.0",
    "react-navigation": "^3.4.1"
    ,
     "devDependencies": 
    "@babel/plugin-proposal-class-properties": "^7.3.4",
    "@babel/plugin-proposal-decorators": "^7.3.0",
    "@babel/preset-react": "^7.0.0",
    "babel-eslint": "^10.0.1",
    "babel-plugin-transform-decorators-legacy": "^1.3.5",
    "babel-preset-expo": "^5.0.0",
    "babel-preset-mobx": "^2.0.0",
    "babel-preset-react-native": "^4.0.1",
    "directory": "^0.1.0",
    "eslint": "^5.12.0",
    "eslint-config-airbnb": "^17.1.0",
    "eslint-plugin-import": "^2.14.0",
    "eslint-plugin-jsx-a11y": "^6.1.2",
    "eslint-plugin-react": "^7.12.3",
    "metro-react-native-babel-preset": "^0.53.0"
,

【问题讨论】:

通过谷歌搜索:yarn add react-native-gesture-handler && react-native link github.com/react-navigation/react-navigation/issues/5244 同样的问题检查一下 【参考方案1】:

在我的应用无缘无故开始显示此错误后,我花了数小时在 Google 上搜索此问题的解决方案,但没有任何效果。最后我尝试做expo start -c,因为我记得在Expo v33 upgrade documentation 中提到过。我的错误消失了。

【讨论】:

以上是关于如何在反应原生应用程序中解决此错误?的主要内容,如果未能解决你的问题,请参考以下文章

反应原生 iOS 应用程序失败,XPC 连接中断错误

如何在反应原生 ios 应用程序中更新应用程序版本?

为啥安装反应原生导航模块后应用程序不起作用?

无法在我的 iOS 设备上安装反应原生应用程序

如何使用 npx 创建新的反应原生应用程序?

我需要如何解决错误 ini 一个信号反应原生