记录一下工作遇到的一个异步加载特效坑点
一个方法 监听事件 根据条件决定是否加载特效。如果在方法里 先判断条件 再异步加载特效 会遇到一个问题。
那就是这个方法被多个消息驱动 在被消息1驱动时,判断条件可能是true在被消息2驱动时 判断条件是false,也就是说,每次被调用时 判断条件可能是不一样的。比如第一次是经验改变的消息 第二次是金币改变的消息,那么可能第一次的时候还不知道金币改变了多少。第一次是true第二次是false。
那么第一次调用时可能加载了特效,第二次不要加载特效,但是第二次判断完的时候 第一次判断的特效才加载出来(因为加载需要时间是异步的)这样结果就错了
怎么办呢,解决方法就是在特效加载出来之后 再进行条件判断,而不是先条件判断。