reactjs - React-Twilio 视频应用程序中的“TypeError:track.attach 不是函数”
问题描述
我的 Twilio React-Video 应用程序适用于 Web(和移动浏览器)上的本地和远程参与者
当我尝试从 Twilio Android-SDK-Flutter 插件连接到同一个“房间”和所有必要的详细信息时,我收到此错误
track.attach() is not a function
componentDidMount() {
const { track } = this.props;
track.attach(this.media.current);
}
// Error : track.attach() is not a function
我可以console.log( )
看到加入会议室的远程参与者,但我无法查看远程参与者。
在移动应用程序中,它运行良好,并且“两个”参与者都是可见的。
解决方案
Twilio 开发人员布道者在这里。
出现这种情况的正常原因是您正在使用participant.tracks
获取曲目。然而,participant.tracks
实际上是一个 Map<Track.SID, TrackPublication>
而一个TrackPublication
没有attach
方法。
相反,您应该检查TrackPublication#isSubscribed
. 如果是,那么您可以使用trackPublication.track.attach
. 如果该曲目尚未订阅,您应该收听告诉您该曲目现在可用的"subscribed"
事件。
在订阅轨道之前,您可能不希望呈现尝试附加轨道的组件。
让我知道这是否有帮助。
推荐阅读
- wordpress - 为什么我的页面显示在浏览器中,但显示 404 服务器响应?是htaccess吗?
- c++ - 使用 Stack 时的分段错误到底是什么以及如何修复它?
- asp.net - Handles 子句需要在包含类型或其基类型之一中定义的 WithEvent 变量
- android - Room 如何将 2 个实体作为 1 个实时数据列表?
- swift - 警告:常量“item”推断为“AnyClass”(又名“AnyObject.Type”)类型,
- git - 卡在 git add
- c - CURL 出现错误 CURLE_PEER_FAILED_VERIFICATION (60)
- scala - Scala 中的语义规则
- python - 如何在变量分隔符上拆分字符串?
- angular8 - 如何循环对象数组并使用 Angular 8 在 UI 中显示它