You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决React Native中Amplify注册UI点击报错的问题

报错原因
  • 依赖冲突:项目同时安装了已废弃的@react-native-community/picker和当前官方维护的@react-native-picker/picker两个Picker相关依赖,Amplify UI的SignUp组件调用新Picker包的原生组件时出现引用混乱。忘记密码页面没有内置Picker控件所以不会触发报错,SignUp页面有下拉选择逻辑需要加载Picker组件,所以只有点击注册时会触发错误。
  • 版本不兼容:当前使用的Expo SDK 37版本过旧,默认适配的@react-native-picker/picker最高版本为1.x,你手动安装的2.2.1版本和Expo 37、aws-amplify-react-native v6的依赖要求不匹配,无法正常识别高版本Picker新增的RNCAndroidDialogPicker原生组件。
修复方案
  • 第一步:卸载冲突的冗余依赖,执行如下命令:
    npm环境执行:
    npm uninstall @react-native-community/picker react-native-android-dialog-picker
    yarn环境执行:
    yarn remove @react-native-community/picker react-native-android-dialog-picker
  • 第二步:降级@react-native-picker/picker到和Expo 37兼容的匹配版本:
    npm install @react-native-picker/picker@1.16.1
    该版本是Expo 37官方支持的最高Picker版本,可正常适配aws-amplify-react-native v6的UI组件。
  • 第三步:清除项目缓存重启服务:
    执行expo start -c启动项目,同时卸载手机上已安装的旧版开发包,重新编译安装即可解决问题。

内容的提问来源于stack exchange,提问作者sdrafahl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:36:03