Когда я пытаюсь запросить информацию формы для установки var, возникает ошибка TypeError
NodeJS на VS Code
Это мой код app.js (не полный)
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var exphbs = require('express-handlebars');
var expressValidator = require('express-validator');
var bodyParser = require('body-parser');
var flash = require('connect-flash');
var session = require('express-session');
var passport = require('passport');
var LocalStrategy = require('passport-local'),Strategy;
var mongo = require('mongodb');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/loginapp', { useNewUrlParser: true });
var db = mongoose.connection;
var routes = require('./routes/index');
var users = require('./routes/users');
// APP INIT
var app = express();
// VIEW ENGINE
app.set('views', path.join(__dirname,'views'));
app.engine('handlebars', exphbs({ defaultLayout:'layout' }));
app.set('view engine','handlebars');
// BODYPARSER
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended:false }));
app.use(cookieParser());
app.use('/', routes);
app.use('/users', users);
users.js file
var express = require('express');
var router = express.Router();
// REGISTER
router.get('/register', (req, res) => {
res.render('register');
});
// LOGIN
router.get('/login', (req, res) => {
res.render('login');
});
// REGISTER
router.post('/register', (req, res) => {
var name = req.body.name;
console.log(name);
});
module.exports = router;
Файл регистрации (.handlebars html)
<h2 class="page-header">Register</h2>
<form method="post" action="/users/register">
<div class="form-group">
<label>Name</label>
<input type="text" class="form-control" placeholder="Name" name="name">
</div>
<div class="form-group">
<label>Username</label>
<input type="text" class="form-control" placeholder="Username" name="username">
</div>
<div class="form-group">
<label>Email</label>
<input type="email" class="form-control" placeholder="Email" name="email">
</div>
<div class="form-group">
<label>Password</label>
<input type="password" class="form-control" placeholder="Password" name="password">
</div>
<div class="form-group">
<label>Confirm Password</label>
<input type="password" class="form-control" placeholder="Password" name="password2">
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
И когда я пытаюсь отправить сообщение об ошибке, происходит.
TypeError: Невозможно прочитать свойство 'name' undefined в router.post (C: \ Users \ Corentin \ Documents \ loginapp \ rout \ users.js: 16: 25) в Layer.handle [как handle_request] (C: \ Users \ Corentin\ Documents \ loginapp \ node_modules \ express \ lib \ router \ layer.js: 95: 5) на следующем (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ route.js: 137: 13) в Route.dispatch (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ route.js: 112: 3) в Layer.handle [как handle_request] (C: \ Users \ Corentin \ Documents\ loginapp \ node_modules \ express \ lib \ router \ layer.js: 95: 5) в C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js: 281: 22 в Function.process_paraмс (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js: 335: 12) в следующем (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router\ index.js: 275: 10) в Function.handle (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js: 174: 3) на маршрутизаторе (C: \ Users \ Corentin\ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js: 47: 12) в Layer.handle [как handle_request] (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ layer.js: 95: 5) в trim_prefix (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js: 317: 13) в C: \ Users \ Corentin \ Documents \ loginapp \ node_modules\ express \ lib \ router \ index.js: 284: 7 в Function.process_params (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js: 335: 12) на следующем (C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js: 275: 10) в C: \ Users \ Corentin \ Documents \ loginapp \ node_modules \ express \ lib \ router \ index.js:635: 15
Большое спасибо за помощь людям, я потратил много часов на эту проблему