从Promise返回值

时间:2016-12-16 18:59:54

标签: meteor promise synchronization return

考虑这个例子:

function returnValue () {
   return somePromise.then (
     function (someThing) {
       return {
         sucess: true,
         data: someThing
       }
     },
     function (someError) {
       return {
         sucess: false,
         data: someError
       }
     }
   )
}

Console.log (returnValue ())

我应该怎么做以便实际上有“someThing”或“someError”?而不是承诺未决?

请注意......当我在“Meteor.methods”中编写这样的代码时,它完全按照我的意愿工作,也就是说,它返回一个值,我返回到客户端,但在“Meteor”之外。方法“或在客户端(浏览器,使用或不使用任何框架)我拥有的是Promise待定。

1 个答案:

答案 0 :(得分:0)

传递给.then()的函数异步返回结果。已完成的Promise的{​​{1}} value将作为传递函数的参数。如您所述,Promise会记录Console.log (returnValue ())本身,而非Promise Promise。链value.then()来电。此外,returnValue()应为Console.log (returnValue ())



console.log()