将值从a返回到返回promise的函数

时间:2017-09-01 13:44:44

标签: javascript node.js ecmascript-6

function test() {

  return new Promise((resolve, reject) => {
    resolve('Yay');
  });

}

function func() {
 return test()
   .then((val) => {  

     return val; 
   })
   .catch((error) => { 
     console.log('handle reject');
   });
}

console.log(func());

我正在寻找一种方法来让函数从函数调用中返回值。现在当我们回来时,我们实际上会回复一个承诺。什么是理想的解决方法?

1 个答案:

答案 0 :(得分:0)

您可以访问.then()

中的值
function func() {
 return test()
   .then((val) => {  

     return val; 
   })
   .catch((error) => { 
     console.log('handle reject');
   });
}

func().then(val){
  console.log(val);
}

因为func()是一个异步调用,你的console.log()不会等待它完成,你需要在回调或then()

中打印它