cc.callFunc(async() => {
await DoSomeThing();
})
有一些异步操作希望放在callfunc里执行,但是callfunc不会await
有什么办法可以让callfunc等promise执行完再往下执行吗
没人知道么??
cc.callFunc是cc.ActionInstant。你看看能不能这样实现你的需求:
// 先执行第一段Action
node.runAction(cc.sequence(action1, cc.callFunc(async() => {
await DoSomeThing();
// 这里继续执行后面的Action
node.runAction(action2);
})));
哇 还有这么风骚的操作么。。。
这是unity玩多了嘛?
这个是es6标准里的语法,不是所有浏览器都支持的,慎用
不知道你的代码都要经过转意???
我的意思是有没有办法让callFunc await完之后再往下执行
因为async()=>{}会直接返回一个promise,所以如果我让几个action顺序执行的话
callFunc不等待doSomething()执行就直接继续执行之后的action了
cocos在build的时候会编译回es5的
你看一下我发的代码,试试。callFunc里await DoSomeThing()做完之后,才会执行后面的Action。