用户:
async_function查看:0 回复:1 评论:0 创建时间:2021-10-12T11:16:35
async
await
async和await是搭配使用的
可以这样理解:
没有async,就不能用await
有了async,可以不有await
而async需要function(函数)的配合
示例:玩家进入时等待1秒发送‘欢迎!’
world.onPlayerJoin(({ entity }) => {
await sleep(1000)
entity.player.directMessage('欢迎!')
})
诶不是你咋报错呢(
SyntaxError: await is only in async function
翻译过来就是‘await 仅在异步函数中有效’
所以就要添加async来避免报错并让程序正确运行
相信很多人都知道加在这:
world.onPlayerJoin(async({ entity }) =>{
//省略
类似的,还有
world.onPress(async({ //...
world.onVoxelContant(async({//...
等等...
但是async的管辖范围仅在那个函数(function)的代码体,第二个函数是不行的,甚至嵌套的也不行
world.onPlayerJoin(async() => {
world.onPress(({ button }) => {
if(button == 'action0'){
await sleep(1000)
world.say('有人按下了左键')
}
}
}
//error
这必须在onPress事件中添加async才行
async也有缺点,比如不稳定(一般情况下不会出现)
没了.