Expo v42与Firebase模块化v9版本不兼容安装问题咨询
问题根因
Expo v42的依赖兼容配置表中,firebase的最高适配版本固定为8.2.3,expo install命令执行时会优先拉取该配置内的版本,因此无论是否指定v9版本号,都会被自动回退到8.2.3。同时Expo v42发布早于Firebase v9正式版,未做对应兼容适配,手动修改package.json的版本号后,Expo启动时的依赖校验逻辑会判定版本不符合要求,抛出未安装的报错。
解决方案
- 方案一:保留Expo v42版本,使用官方适配的Firebase版本
直接执行expo install firebase安装8.2.3版本即可正常使用,除无v9模块化优化特性外,常规功能不受影响。 - 方案二:需使用Firebase v9的情况下升级Expo版本
将Expo升级至v44及以上版本,该区间版本已完成Firebase v9的兼容适配,升级完成后执行expo install firebase@9.0.2即可成功安装对应版本,不会出现版本回退和启动报错问题。升级前请提前备份项目代码,调整不兼容的API调用逻辑。
内容的提问来源于stack exchange,提问作者Matt
相关产品推荐
相关产品推荐

