请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师我这里不理解

咱们为了解决这个bug,
就是把video中的danmulist 变成纯粹的获取到的数据 后面没有修改过此数据了
弹幕列表通过深拷贝 给另外一个变量,来进行渲染
那为什么,我们发送的弹幕能马上在视频上飘过呢? danmulist不是没有改变吗???

正在回答 回答被采纳积分+3

1回答

我自己种花海 2023-04-16 22:06:43

应该是

this.videoContext.sendDanmu({
        text: data.info.content,
        color: '#00ff00'
      });

这一段是控制发送弹幕显示的,就是说我们发送完数据就能显示出来。将danmulist拷贝的commentList,只是作为评论展示用的,也就是本地变化的是commentList而不是danmulist

0 回复 有任何疑惑可以回复我~
  • 提问者 鸣蜩十柒 #1
    那按照你这个说法,sendDanmu这个方法不就直接显示出来了吗,没有深拷贝的必要了吧。但事实是老师视频里没深拷贝之前,确实发送了好多遍弹幕才飘过去,而拷贝之后分开后,尽然就是发送一次飘一次。。
    回复 有任何疑惑可以回复我~ 2023-04-16 22:37:13
  • 我自己种花海 回复 提问者 鸣蜩十柒 #2
    按照我的想法是,不让中途修改danmulist(可能是响应式影响uni弹幕?),拷贝之前修改的是danmulist,而拷贝之后修改的是commentList,所以danmulist数据一直没变化,就不会影响弹幕的发送
    回复 有任何疑惑可以回复我~ 2023-04-16 23:35:13
  • 提问者 鸣蜩十柒 回复 我自己种花海 #3
    只能怎么理解了,这是我想说的但不知道怎么表达出来😂
    回复 有任何疑惑可以回复我~ 2023-04-17 00:06:57
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号