async问题,JS Promise无法返回结果,但可以使用console.log
Issue with async, JS Promise not able to return a result, but works with console.log
目前,当我在运行"node jkl.js"时,在"exports.findOneProblem"中使用console.log(result)时,它可以工作。我可以看到结果。然而,当我使用return而不是console.log()时,我得到的只是控制台中的Promise{pending}。请填补空白。。。。学习如何履行承诺,谢谢。
//asd.js
exports.findOneProblem = function(problemId) {
return RClient.authenticate(options).then(function (client) {
const Problem = client.Problem;
return Problem.findOne(problemId)
}).then(function(result){
return result
});
};
第二个文件:jkl.js
var okay = require('./asd');
var moneymoney = okay.findOneProblem(263)
console.log(moneymoney)
var honeyhoney = moneymoney.then(function(result){
return result
})
console.log(honeyhoney)
当您收到Promise时,这意味着您将在"稍后"获得一个值,即在所有同步代码完成运行之后。访问Promise提供的值的方法是使用.then
函数。
moneymoney.then(function(result) {
console.log(result);
// Add your code for using the result of `okay.findOneProblem(263)` here
});
相关文章:
- 我可以使此幻灯片图像自动播放吗?
- async问题,JS Promise无法返回结果,但可以使用console.log
- 如何使console.log可配置
- HTML/JavaScript拖动&Drop-是否可以使重影图像*NOT*看起来'冲洗掉'
- 可以使 jquery 点击事件在所有其他点击事件之后执行
- 是否有一个Javascript函数可以使代码在运行时延迟
- 有什么方法可以使页面无法刷新吗
- 使用chrome.downloads.download,是否可以使文件不弹出下载栏
- javascript是否有一个选项可以使句点与任何字符匹配,包括换行符
- 有一种方法可以使jslint在使用控制台时显示警告或错误
- 有没有任何方法可以使<选择>转到url
- 有没有任何方法可以使这个名称生成循环运行最短的秒数
- JSXGraph 中有什么方法可以使图像不透明
- 有没有一种方法可以使Iframe根据需要进行扩展
- 是否可以使find()和findOne()方法只返回模式字段
- Javascript.创建类似数组的对象.是否可以使 .length 自动增量
- 是否可以使多个引导弹出窗口更加干燥
- 是否可以使控制器返回模式窗口的数据?MVC5 ASP.NET
- Jquery脚本是否可以使更小或更高效
- 有哪些方法可以使客户端更难操作 DOM