gpt4 book ai didi

javascript - 如何在KOA中编写公共(public)模块?

转载 作者:行者123 更新时间:2023-12-03 09:22:13 25 4
gpt4 key购买 nike

我想制作一个供许多 Controller 使用的公共(public)模块,我是这样写的:

//module.js
export.node = function(that){
return co(function*(){
.....
var data = {
name:"xx"
};
return data;
})
}

//controller.js
var dataUtil = require('../module');
var _data = dataUtil(this);

还有其他解决方案吗?

最佳答案

您不需要将生成器包装在 co 中;您可以简单地使用 yield * 将其引入,因此:

// utils/node.js
exports.node = function *(that) {
var bar = yield someAsyncThing();
that.body = { bar: bar };
}

然后调用它

var node = require('./utils/node').node;
api.get = function *() {
yield *node(this);
});

关于javascript - 如何在KOA中编写公共(public)模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31809068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com