راکت
حل شده

مشکل resolver در graphql

1 پاسخ

سلام دوستان عزیز
من تو برگردوندن اطلاعات از mysql تو graphql به مشکل زیر برخوردم:

let resolvers = {
    Query: {
        user: async (parent, args) => {
            db.query(`SELECT mobile FROM users where id=${args.id}`, function (err, rows) {
                if (err) {
                    throw err;
                } else {
                    return rows[0].mobile;
                }
            });
        }
    }
}

چطوری میتونم شماره موبایل رو دریافت کنم؟

ثبت پرسش جدید

پاسخ‌ها

1
محمد
محمد
@spooky021
بهترین پاسخ

مشکل رو به این صورت حل کردم :)

let resolvers = {
    Query: {
        user: async (parent, args) => queryDB(`SELECT mobile FROM users where id=${args.id}`).then(data => data)
    }
}
const queryDB = (sql, args) => new Promise((resolve, reject) => {
    db.query(sql, args, (err, rows) => {
        if (err)
            return reject(err);
        rows.changedRows || rows.affectedRows || rows.insertId ? resolve(true) : resolve(rows);
    });
});

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام