2.2.0的node的TOUCH事件在什么情况下会被打断?

最近遇到一个问题,就是给node加上touch的4个监听事件后,鼠标按下后触发START,然后一直移动鼠标,有几率touch事件打断了。MOVE,END,CANCEL输出都没执行。需要重新点击后触发监听。是什么原因可以导致事件监听被打断而又不触发MOVE,END,CANCEL?有大佬知道的吗?现在项目有这个BUG很难受。

    this.node.on(cc.Node.EventType.TOUCH_START, this.onTouch, this);
    this.node.on(cc.Node.EventType.TOUCH_MOVE, this.onTouch, this);
    this.node.on(cc.Node.EventType.TOUCH_END, this.onTouch, this);
    this.node.on(cc.Node.EventType.TOUCH_CANCEL, this.onTouch, this);

onTouch(evt){
    switch (evt.type) {
        case cc.Node.EventType.TOUCH_START:
            console.log("按下~~")
            break;
        case cc.Node.EventType.TOUCH_MOVE:
             console.log("移动~~")
            break;
        case cc.Node.EventType.TOUCH_END:
            console.log("松开~~")
            break;
        case cc.Node.EventType.TOUCH_CANCEL:
            console.log("移出~~")       
            break;
    }
},

return false

并没有地方return

我怀疑我也有这种情况发生,但没法确定,目前能确定的是node.pauseSystemEvents(true); 这个方法会阻断事件,如果在没有resume的情况下松开,则会没有cancel和end 回掉,不知道还有没有其他的情况导致这种情况的发生

希望有人也有什么类似的情况导致这种情况发生,给个建议,目前很怀疑是被打断了