NodeJs之co yield的使用,将异步转同步

person smartzeng    watch_later 2017-07-05 16:24:20
visibility 3433    class CO,Promise,Nodejs,异步转同步    bookmark 分享

例如:fs.writeFile是异步方法

function test(){
    return co(function *() {    
        yield (() => new Promise((resolve, reject) => {
            fs.writeFile(path, '', (err) => {
                if (err) return reject(err);
                    resolve(1);
            });
        }))();
        return;
    });
}

调用test;

co(function *() {
    let res = yield test();
    console.log(res);
})


评论区
评论列表
menu