gpt4 book ai didi

node.js - 在 module.export 的方法中使用 async/await

转载 作者:行者123 更新时间:2023-12-05 02:04:48 32 4
gpt4 key购买 nike

我有一个问题,我想创建一个模块来导出对 db 的各种调用,并在我的应用程序中将其与 await 一起使用...这里是一个示例:

// module
const config = require("../config/config");
const mysql = require("mysql2/promise");

const getUsersData = async (args) => {

const db = await connectDb();

let rows, fields;
try {
[ rows, fields ] = await db.query("SELECT * FROM users WHERE id !== ? LIMIT ?", [0, 10]);
} catch (e) {
return e;
}
return rows;
};

const connectDb = async () => {
const db = await mysql.createConnection({
host: config.dbhost,
user: config.dbuser,
password: config.dbpassword,
database: config.dbname,
});

return db;
};

module.exports = {getUsersData, connectDb}

在我的应用程序中,我想要:

const myModule = require("./db/lyDb");

let myData = await myModule.getUsersData({args: 'my argument'});

问题是我收到以下错误 await is only valid in async function

如何解决?发送

最佳答案

您能否将您的主要应用程序代码包装在一个async 函数中?

const myModule = require("./db/lyDb");

const main = async () => {
let myData = await myModule.getUsersData({args: 'my argument'});
// rest of your application
}

main()

关于node.js - 在 module.export 的方法中使用 async/await,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64061973/

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