RN项目引入@videosdk.live/react-native-sdk时出现undefined问题求助
React Native中@videosdk.live/react-native-sdk导入返回undefined的解决办法
问题描述
在React Native项目中使用@videosdk.live/react-native-sdk库,按官方指引完成配置后,执行import VideoSdk from '@videosdk.live/react-native-sdk';时返回undefined,无法正常导入库中的方法。
排查与解决步骤
检查包的安装完整性
卸载现有包后重新安装,同时清理Metro缓存:# npm 命令 npm uninstall @videosdk.live/react-native-sdk npm install @videosdk.live/react-native-sdk npx react-native start --reset-cache # Yarn 命令 yarn remove @videosdk.live/react-native-sdk yarn add @videosdk.live/react-native-sdk yarn start --reset-cache确认导入方式是否正确
部分版本的库可能采用命名导出而非默认导出,尝试改用命名导入:import { VideoSdk } from '@videosdk.live/react-native-sdk';也可以尝试直接指定库的入口文件导入:
import VideoSdk from '@videosdk.live/react-native-sdk/dist/index.js';验证原生配置是否生效
即使确认过配置,仍需二次检查:- iOS:确认
Podfile已添加库依赖,执行pod install后重新构建项目; - Android:检查
settings.gradle和build.gradle中是否正确引入库,清理Android构建缓存后重新编译。
- iOS:确认
检查版本兼容性
确认库版本与你的React Native版本适配,可尝试降级或升级到兼容版本:npm install @videosdk.live/react-native-sdk@x.x.x(将
x.x.x替换为官方文档标注的兼容版本号)排查Metro配置
检查metro.config.js中是否存在排除该库的打包规则,比如blockList或旧版的blacklistRE是否包含@videosdk.live相关路径,如有需移除。
内容的提问来源于stack exchange,提问作者Nikita Kornasevich
相关产品推荐
相关产品推荐

