objectがemptyだった場合のケースをテストしているので、意図的にデータベースに一致しないqueryを作成しました。 else ifステートメントですが、consoleでresponseを取得できません。
何が悪いのですか?
user.loginUser = (jUserData, res) => {
var aData = [
jUserData.email,
jUserData.mobile_number,
0
]
var sQuery = 'SELECT * FROM users WHERE email = ? AND mobile_number = ? AND active = ?'
function isEmpty(obj) {
for (var key in obj) {
if (obj.hasOwnProperty(key))
return false;
}
return true;
}
db.each(sQuery, aData, function (err, jRow) {
console.log(jRow)
if (err) {
console.log('BAD, user not logged in')
return res(true, {
status: "INTERNAL SERVER ERROR"
})
}
if (isEmpty(jRow)) {
console.log('NOT FOUND')
return res(true, {
status: "NOT FOUND"
})
}
console.log('GREAT, user logged in')
return res(false, jRow)
console.log(jRow)
})
}
Object.keys()
または他のObject
関数を使用したい場合、このコードが役立ちます
function isEmpty(obj) {
return !obj || Object.keys(obj).length === 0;
}