quando tento acessar o app dentro da rota de promocoes eu recebo um undefined, consegue me explicar a solução ou o porque a rota funciona mas dentro dela o objeto app não existe.
import * as express from 'express';
import db from '../infra/models/index';
import { ProdutosInstance } from '../infra/models/ProdutosModels';
class Promocoes {
private app: express.Application;
constructor(app: express.Application) {
this.app = app;
this.homeRotas();
}
private homeRotas(): void {
this.app.get('/promocoes/form', (req: express.Request, res: express.Response): void => {
db.Produtos.findAll().then((produtos: ProdutosInstance[]) => {
res.render('promocoes/form', {lista: produtos});
})
.catch((err) => {console.log(err)});
});
this.app.post("/promocoes",function(req,res){
var promocao = req.body;
console.log(promocao);
this.app.get('io').emit('novaPromocao',promocao);
res.redirect('promocoes/form');
});
}
}
export default Promocoes;