LayaAir之Promise

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LayaAir之Promise相关的知识,希望对你有一定的参考价值。

测试环境 : LayaAir1.7.19 , 其实在2.0中也是一样的.

一 : 加入Promise环境

① , 找到tsconfig.json , 可以看到配置如下:
技术分享图片
② , 加入配置

    "lib":[
      "es5",
      "dom",
      "es2015.promise"
    ]

如下:
技术分享图片

二 : 测试

核心代码:

    private sleep(numberMillis : number)  : void { 
        let now : Date = new Date(); 
        let exitTime : number = now.getTime() + numberMillis; 
        while (true) { 
            now = new Date(); 
            if (now.getTime() > exitTime) 
            return; 
        } 
    }
    private  timeout() : void{
        console.log(`等到5秒`);
        this.sleep(5000);
    }

    private async getSomething( $name : string ) : Promise<string>{
        console.log(`开始执行异步函数`);
        await this.timeout();
        return $name;
    } 

调用代码:

        this.getSomething(`Aonaufly`).then( ($str : string) : void => {
            console.log(`获得异步信息 : ${$str}`);
        } );

三:结果

技术分享图片

以上是关于LayaAir之Promise的主要内容,如果未能解决你的问题,请参考以下文章

前端面试题之手写promise

LayaAir2.13.0

LayaAir2.13.0

LayaAir之小游戏的坑之解决之道

VSCode自定义代码片段12——JavaScript的Promise对象

VSCode自定义代码片段12——JavaScript的Promise对象