-1

i have created one global function for fetching records from database mysql , but its return undefined
but once we pass static data under this function its working fine ,

   methods.trendingPodData =   function (){
    var sql = "SELECT * from table1 where 1";
      con.query(sql, function (err, result, fields) {
        var myJSON = JSON.stringify(result);
        var hashtagsArray = JSON.parse(myJSON);
         //console.log(hashtagsArray);
         return hashtagsArray;      
   }); 
}

1 Answers1

0

Create promise and while calling function resolve it,

 methods.trendingPodData = () => {
  return new Promise((resolve, reject) => {
    var sql = "SELECT * from table1 where 1";
      con.query(sql, (err, result, fields) => {
        if(err) {
         return reject(err)
        }
        var myJSON = JSON.stringify(result);
        var hashtagsArray = JSON.parse(myJSON);
         //console.log(hashtagsArray);
         resolve(hashtagsArray);      
   }); 
 }
}

And while calling function,

router.get('/GetPodHomeScreen', async (req, res) => {
 try {
  const allTrendingDataArray1 = await globalVar.data.trendingPodData(); 
  res.send(allTrendingDataArray1)
 } catch(error) {
  res.status(500).send(error)
 }
})
Vikas Keskar
  • 1,158
  • 9
  • 17