express mysql to js variable gets undefined

Advertisements

hi I want to assign result of MYSQL query to JS variable to use in serval times but gets back empty array what is problem?
my code

app.get('/api/get/db',async(req,res)=>{

async function test() {
new Promise((resolve,reject)=>{
  con.query("SELECT * FROM `temp`",(err,result)=>{
   resolve(result)
  })
 })
}
data =await test()

res.status(200).json({data})
})

i tried to return but not working

>Solution :

app.get('/api/get/db',async(req,res)=>{

async function test() {
//here you have to add **return** keyword
return new Promise((resolve,reject)=>{
  con.query("SELECT * FROM `temp`",(err,result)=>{
   resolve(result)
  })
 })
}
data =await test()

res.status(200).json({data})
})

you have to add return keyword before promise object to return

Leave a ReplyCancel reply