I'm having trouble returning data using module.exports, here's an example of how I'm trying to do
module.exports.menu = (app,req,res)=>{
var fs = require('fs');
var patch = 'public/menu';
var conn = app.config.dbSyncSql();
fs.readdir(patch, (err, files) => {
/**
* Aqui executamos uma consulta SQL e verificamos a tabela do login qual e o idioma
*/
var linhas_login = conn.queueQuery('SELECT * FROM login WHERE id = '1'')();
var lang = linhas_login[0].lang;
/**
* Criamos um loop com os arquivos emcontrados no parametro fs.readdir
* abrimos cada arquivo separadamente e colocamos o seu conteudo em um objeto
*/
function reload() {
var obj = [];
files.forEach(file => {
var results = JSON.parse(fs.readFileSync(patch + '/' + file, 'utf8'));
// console.log(results.lang);
// console.log(lang);
/**
* Aqui fazemos a verificação da liguagem e mostramos o menu de acordo com o idioma do cliente
*/
if (results.lang == lang) {
results.sub = results.menu.menu_sub;
obj.push(results);
}
});
retorno(obj)
//return obj;
}
//console.log(reload());
return reload();
});
function retorno(x) {
return x;
}
}
But I can not get the data
module.exports = (app)=>{
app.get('/get_menu', (req, res) => {
var conn = app.config.dbSyncSql();
var mem = app.app.controlles.menu.menu(app,req,res);
res.send(mem)
//res.render('index', { menu: mem });
});
}
The entire project is at this link link
You can take a look at my folder structure link in this link so when I change this part of the code
function retorno(x) {
st = x;
}
return st;
it even works every time it is the first time it accesses the error