Angular 13集成Livekit遇TS2304错误:找不到RTCEncodedVideoFrame求解决
解决Angular 13集成Livekit时找不到
RTCEncodedVideoFrame的问题 问题原因
你安装的@types/webrtc@^0.0.39版本过于陈旧,RTCEncodedVideoFrame、RTCEncodedAudioFrame这类WebRTC编码帧相关的类型定义,在这个老版本里尚未被收录,导致TypeScript编译时无法识别这些类型。
解决方案
按照以下步骤操作:
升级
@types/webrtc到兼容版本
卸载旧版本并安装适配Angular 13的新版:npm uninstall @types/webrtc --save-dev npm install @types/webrtc@^0.0.175 --save-dev此版本对Angular 13默认使用的TypeScript 4.4.x兼容性较好,若仍有问题可尝试安装最新版。
检查
tsconfig.json的lib配置
确保compilerOptions里的lib数组包含"ESNext"和"DOM",这类WebRTC扩展类型属于DOM API范畴:{ "compilerOptions": { "lib": [ "ESNext", "DOM", "DOM.Iterable" // 其他项目所需lib ] } }清理缓存并重启构建
执行命令清理Angular缓存,避免旧类型定义残留影响编译:ng cache clean ng serve --delete-output-path
若以上步骤无效,可在tsconfig.json的compilerOptions中临时添加"skipLibCheck": true跳过库类型检查,但不推荐长期使用,优先保证类型定义的正确性。
内容的提问来源于stack exchange,提问作者Pedro Martins
相关产品推荐
相关产品推荐

