你可以使用 async/await 来实现等待 Bus.emitObject 方法执行结束后再返回 rest 值。以下是修改后的代码示例:
import Bus from "../eventBus";
const post = async (req, res, next) => {
try {
const { ...body } = req.body;
const bankData = await BankBase.findByPk(body.id);
if (!bankData) {
return res.sendStatus(404);
} else {
const rest = await Bus.emitObject(bankData.event, { data: body });
return res.json({ code: 200, data: rest.rest });
}
} catch (error) {
return res.json({ msg: '该银行还未注册,请先注册。' });
}
};
module.exports = {
post,
};
通过将 post 函数声明为异步函数,并使用 await 关键字来等待 Bus.emitObject 方法执行完成,确保在返回结果之前,rest 值已经被赋值完成。这样就可以实现在调用结束之后再返回 rest 值。
内容由零声教学AI助手提供,问题来源于学员提问




