typescript promise异步函数操作

原文出处:https://blog.csdn.net/weixin_39169232/article/details/74748150
延伸阅读:ionic2页面回传值,关于Typescript的Promise承诺
promise最主要的思想就是对异步操作结果的一个承诺,承诺的状态有如下几种:

  • 1.pending: promise 的初始化状态
  • 2.resolved: 代表异步操作成功  (已成功,又称Fulfilled)
  • 3.rejected: 代表异步操作失败

注意:当一个promise处于 resolved或rejected状态后,它的状态就永远不可更改了。

一、定义food函数

function foo(){  
    return new Promise ((resolve, reject) => {
        try{      
            resolve("success");    // 成功
        }
        catch(error){
            reject("fail");        // 失败
        }  
    });
}

二、调用food函数

//调用promise 方法
this.foo()
    .then( (res) =>{       
       console.info(res);       // then - 成功后执行
    })
    .catch( (err) =>{        
       console.error(err);      // catch - 失败后执行
    });

说明:
 *正常在promise中并不需要 try...catch ,因为promise会在异常抛出的时候
 *自动进入 rejected状态。
 *上段代码中声明了一个foo的函数,返回一个promise.
 *一个promise包含一个then方法,它接受一个函数,在promise被resolved后调用。
 *promise还提供了一个名为catch的方法,它在promise被rejected之后被调用

你可能感兴趣的:(实用,Angular2,Ionic3)