CheckIfExists函数不等待setErrors返回值。因此,当我将错误作为一个空对象时。
const con = require("../config/keys");
const isEmpty = require("./is-empty");
let errors = {};
setErrors = error => {
errors = error;
};
module.exports = checkIfExists = (data, table) => {
con.query(
`SELECT * FROM ${table} WHERE particulars = '${data}'`,
(error, results) => {
if (error) {
return console.error(error.message);
}
console.log(results);
if (typeof results !== "undefined" && results.length > 0) {
errors.particulars = "Particulars already exists";
setErrors(errors);
}
}
);
console.log(errors);
return {
errors,
isUnique: isEmpty(errors)
};
};
如何使CheckIfExists等待setErrors返回值。
当前输出
{}
[ RowDataPacket {
serial_number: 109,
id: 0,
particulars: 'ABCD',
party: 'ABC',
make: null }
]
所需的输出
[ RowDataPacket {
serial_number: 109,
id: 0,
particulars: 'ABCD',
party: 'ABC',
make: null }
]
{}
谢谢。