前端如何解决延迟渲染

需求说明:

  一个游戏项目,前端和后端采用websocket 协议通讯。

  

  游戏主操作界面,由一个6个按钮场景和一个主弹层组成,和后端交互的信息都是在主弹层上展示的。


  现在的情况是:

  

  a.当后端通知前端游戏开始后,会连续发送好几个信息,前端接收到后端发过来的信息后,需要依次以在主弹层

  

  上展示该消息。但是这样会出现一个情况就是 后面的信息会覆盖前面的信息。无法做到消息按照后端发送的顺序

  

  依次展示。

  

  b.还有一个情况就是,假如6人局游戏, 后端会要求6人都点击确定后,然后后端会发送到下个流程的消息,前端

  

  接收到改消息,提示到下个流程了,问题是如果是 最后一个玩家点击确定后,他还没来得及提示操作完成 类似

  

  的消息,就收到后端下个流程的消息了,然后最后一个玩家确定操作的消息就被覆盖了。


  如果在多个弹层上展示还好,可项目要求必须在同一个弹层展示,还有后端那边延迟处理的话,对性能消耗太

  

  大,后端延迟不现实;前端基于setTimeout做延迟,我试了下,问题多多了。

  


  不知道对于这种需求,大家怎么处理,求教!


慕运维8079593
浏览 788回答 1
1回答

慕标5832272

a需求很奇怪啊,像通知类的信息一般都用类似notification的形式,每条notification有自己的生命周期,时间到了才消失。b的话,点完确定立马收到后端下一个流程的消息,这不说明网络情况好吗,结果还要为了提示完成特地去延迟?这让我想起以前的一个段子,为了让用户看到炫酷的loading画面,强制Thread.Sleep的
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript