我想知道是否将CTX对象从路由器模块传递到查询模块。
最好将CTX对象传递给一个函数,然后将其返回给下一个函数,或者像我目前正在将其传递给每个函数一样?
check
const queries = require('../queries/items.js');
const uniqid = require('uniqid');
module.exports = ({ itemRouter }) => {
itemRouter
.post('/create', async (ctx) => {
const itemId = uniqid();
const itemCount = await queries.searchItem(ctx);
if (itemCount.length) {
ctx.body = {status: 'Product Exists'};
} else {
await queries.createItem(ctx, itemId);
await queries.createInventory(ctx, itemId);
ctx.body = {};
}
})
};
此功能正常运行,我很好奇它是否是最有效的解决方案。