我在将我的反应导航从v3升级到v5时遇到了一些麻烦。我一直遇到这个错误,起初我以为是个错误,但我在网上找不到其他有关此错误的投诉。为了100%确保旧版本不会引起任何问题,我完全卸载了所有react-navigation,并从v5开始重新创建。索引文件仍然出现错误。似乎不了解打字稿...这是一个已知的错误吗?我还需要采取其他步骤,而不是有关安装Typescript的文档吗?
更新: ./types文件未正确编译...似乎无法识别NavigationState或ActionHelpers ...这是一个错误吗?有人看过吗?
更新2 我正在RN V0.59上运行,所以我认为可能存在依赖性问题。我正在升级到V0.62.2,然后看问题是否仍然存在
https://reactnavigation.org/docs/getting-started
SyntaxError: /用户/myusername/myprojectname/node_modules/@react-navigation/stack/src/index.tsx: 意外令牌(51:12)
49 | *类型50 | * /
51 |出口类型{ | ^ 52 | StackNavigationOptions,53 | StackNavigationProp,54 | StackHeaderProps,
答案 0 :(得分:1)
希望这对您有帮助!
删除您的 yarn.lock 或 package-json.lock 文件,然后运行 yarn / npm install 。
然后尝试使用 npx react-native start --reset-cache 或 expo start -c
清除缓存参考
答案 1 :(得分:1)
如果您使用TypeScript,请执行以下操作:
node_modules
和锁定文件(yarn.lock
或package.lock
)yarn cache clean
或npm cache clean
。yarn
或npm install
。yarn react-native start --reset-cache
。yarn react-native run-android
。如果不这样做,请按照下列步骤操作:
yarn add --dev @babel/core@^7.9.0 @babel/runtime@^7.9.0
。emulator/phone
卸载apk。yarn react-native start --reset-cache
。yarn react-native run-android
。如果这不起作用,请转到android/
,然后运行gradlew clean
或./gradlew clean
,从手机中删除APK,然后重新运行yarn react-native run-android
。
答案 2 :(得分:0)
对于通过删除 node_modules
等无法使其工作的任何人:
将 @babel/core
添加为 全局 依赖项 (yarn global add @babel/core
/ npm install -g @babel/core
),因为全局安装的 expo-cli
不会识别基于项目的出于某种原因安装了 babel。