unschdule问题

unschedule一个还没有schedule的函数,会报JS Exception: cc.Scheduler: Illegal target which doesn’t have uuid or instanceId
我现在用1.6.2,以前1.5.2不会有这个问题
那我有什么 办法判断这个函数是否被schedule了吗?

最新1.8.1

1.8.1版本我的游戏有问题,直接crash了,也没提示哪里问题
所以,降到1.6.2

同问, 我能想到的做法是:

  1. 尽量使用 update 回调做计时器
  2. 使用额外的 boolean 值判断
  3. 判断 instanceId 是否存在

这个schedule的问题好像在1.8.2里修复了,但是是不是真修复了不知道
而且,我测试,发现unscheduleAllCallbacks方法没效果

应该是你代码的问题,你好好看一下api
使用计时器 · GitBook
http://docs.cocos.com/creator/manual/zh/scripting/scheduler.html

你是否是直接使用了 cc.director.getScheduler().schedule?

这里的问题不是unschedule了一个还没有schedule的函数引起的,而是你传入的 target 不被支持。scheduler 的 target 只能是 node/component.
另外,你可以用 isScheduled,如果 target 支持的话。

为了避免用户产生同样的困惑,之后我们会对报错信息进行完善。

你好, 我这样写的, 在ccc中使用模拟器运行功能正常没问题, 但是使用浏览器运行, 或者微信扫码运行就会报错 Illegal target which doesn’t have uuid or instanceId这个错不知道是什么原因. 版本1.10.0