如何在Javascript中整齐地链接承诺

时间:2017-08-15 07:00:24

标签: angular angular-promise es6-promise

我怎样才能编写这个函数neater,返回然后在超时回调中解析它最好的方法呢?我问,因为我是javascript promises的新手。

getStuff(): Promise<any> {
    let self = this;

    return new Promise(function(resolve, reject) {
        self.getData()
            .then(function(resp) {
                self.parse(resp);
            })
            .then(function() {
                setTimeout(function() {                                 
                    resolve();
                }, 5000);
            });
    });  
}

1 个答案:

答案 0 :(得分:0)

见下面的例子......

    getStuff(): Promise<any> {
        let self = this;

        return new Promise(function(resolve, reject) {
            self.getData()
                .then(function(resp) {
                   return self.parse(resp);   //return here
                })
                .then(function(resp2) {
                    setTimeout(function() {                                 
                        resolve(resp2);
                    }, 5000);
                },
                (err) => reject(err));
        });  
    }