Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

211
Visualizações
Cómo pasar datos "controlador" en lugar de "app.js" en Nodejs

Estoy trabajando en Nodejs (Express.js), estoy enviando datos de formulario al controlador pero no funcionan para mí, recibo el error "Error de tipo: no se puede leer la propiedad 'nombre' de indefinido en Nodejs", pero el problema principal es mi código es trabajando/obteniendo datos en "app.js" pero quiero obtener datos en "userController" porque quiero usar MVC strtucre, aquí está mi root.js

 var express=require('express'); var router= express.Router(); var controllers= require('../controllers'); router.get('/', controllers.homeController.index); router.get('/signup', controllers.userController.signup); router.post('/signup', controllers.userController.save); router.get('/login', controllers.userController.login); router.get('/dash', controllers.userController.dash); module.exports = router;

Aquí está mi archivo userController.js

 userController.save = function (req, res, next) { var name = req.body.name; console.log(name); }

Aquí está mi app.js, ¿Cómo puedo obtener datos en "userController" en lugar de "app.js", Gracias de antemano.

 const express = require('express'); const mysql = require('mysql'); const expressValidator = require('express-validator'); const bodyParser = require('body-parser'); const cookieParser = require('cookie-parser'); const session = require('express-session'); const flash = require('connect-flash'); const app = express(); app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); app.use('/', routes); app.set('view engine', 'pug'); app.set('views', path.join(__dirname, 'views')); app.use(express.static(__dirname + '/public')); app.use(cookieParser('keyboard cat')); const PORT = 4000 app.listen(PORT, function (err) { if (err) console.log(err); console.log("App started on PORT", PORT); });
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

He reorganizado sus códigos. Asegúrese de que la declaración de la ruta de su filtro sea correcta.

 var express=require('express'); var router = express.Router(); var controllers= require('../controllers/userController'); // if userController.js in controller folder. router.get('/', controllers.homeController_index); router.get('/signup', controllers.userController_signup); router.post('/signup', controllers.userController_save); router.get('/login', controllers.userController_login); router.get('/dash', controllers.userController_dash); module.exports = router;

controlador de usuario.js

 const userController_save = function (req, res, next) { var name = req.body.name; console.log(name); }

aplicación.js

 const express = require('express'); const mysql = require('mysql'); const expressValidator = require('express-validator'); const bodyParser = require('body-parser'); const cookieParser = require('cookie-parser'); const session = require('express-session'); const flash = require('connect-flash'); const path = require("path"); const app = express(); const routes = require('./routes/root'); // If your root.js inside a routes folder app.use(bodyParser.urlencoded({ extended: true })); app.use(bodyParser.json()); app.set('view engine', 'pug'); app.set('views', path.join(__dirname, 'views')); app.use(express.static(__dirname + '/public')); app.use(cookieParser('keyboard cat')); app.use('/', routes); const PORT = 4000 app.listen(PORT, function (err) { if (err) console.log(err); console.log("App started on PORT", PORT); });
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda