热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何让下面的代码正常调用异步方法?

问题描述functionsetupBridge(ctx,next){

问题描述

function setupBridge (ctx, next) {



1
2
3
4
5
6
7
8
if (hasBootErrors(ctx)) {

  return next();

}

ctx.bridge = require('../plugins/bridge')(env);

if (ctx.bridge) {

  ctx.bridge.startEngine(ctx.entries);

}

next( );

}
ctx.bridge.startEngine(ctx.entries)不能正常执行,找不到startEngine(ctx.entries)方法,
已知bridge.startEngine是在异步方法内部存在

问题出现的环境背景及自己尝试过哪些方法

当方法不是异步的时候,可以正常调用




相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
被调用的方法:
async function create (env) {

var bridge = { };

var opts = await options(env);
var interval = opts.interval;

mostRecentRecord = new Date().getTime() - opts.fetch.minutes * 60000

bridge.startEngine = function startEngine (entries) {

1
2
3
4
5
6
7
8
9
opts.callback = bridged(entries);



setInterval(function () {

  opts.fetch.minutes = parseInt((new Date() - mostRecentRecord) / 60000);

  opts.fetch.maxCount = parseInt((opts.fetch.minutes / 5) + 1);

  opts.firstFetchCount = opts.fetch.maxCount

  console.log("Fetching Share Data: ", 'minutes', opts.fetch.minutes, 'maxCount', opts.fetch.maxCount);

  engine(opts);

}, interval);

};
bridge.startEngine();
return bridge;
}

你期待的结果是什么?实际看到的错误信息又是什么?

希望ctx.bridge.startEngine(ctx.entries)能够正常执行


   



推荐阅读
author-avatar
曾理Aiheqihao_227
这个家伙很懒,什么也没留下!