【发布时间】:2019-02-23 16:10:53
【问题描述】:
如果 promise 已解决,输出中的 repos 是如何未定义的。
输出到代码是:
从数据库中读取.......
你好
repos 是:未定义
从存储库中读取
getuser(1)
.then( result =>{console.log('hello');getRepository(result.username)})
.then( repos =>console.log('repos are :',repos));
相关的异步函数有
function getuser(id){
return new Promise((resolve,reject)=>{
setTimeout(() => {
console.log('reading from database........')
resolve({id:id , username:"sunil"});
}, 5000);
});
}
function getRepository(username){
return new Promise((resolve,reject)=>{
setTimeout(()=>{
console.log('reading from repository')
resolve(['repos1','repos2','repos3']);
}
,3000);
})
}
【问题讨论】:
-
你必须返回结果。
return getRepository(result.username)}
标签: javascript asynchronous promise