首页 > 解决方案 > 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( )看到加入会议室的远程参与者,但我无法查看远程参与者。

在移动应用程序中,它运行良好,并且“两个”参与者都是可见的。

标签: reactjstwiliotwilio-apitwilio-video

解决方案


Twilio 开发人员布道者在这里。

出现这种情况的正常原因是您正在使用participant.tracks获取曲目。然而,participant.tracks实际上是一个 Map<Track.SID, TrackPublication>而一个TrackPublication没有attach方法

相反,您应该检查TrackPublication#isSubscribed. 如果是,那么您可以使用trackPublication.track.attach. 如果该曲目尚未订阅,您应该收听告诉您该曲目现在可用的"subscribed"事件。

在订阅轨道之前,您可能不希望呈现尝试附加轨道的组件。

让我知道这是否有帮助。


推荐阅读