Javascript 出现未定义的新用户

Javascript 出现未定义的新用户,javascript,node.js,express,authentication,Javascript,Node.js,Express,Authentication,我是一个新手,正在尝试创建一个简单的身份验证登录/注册表单。“新用户”是未定义的,我真的不知道为什么。。。。如有任何建议,我们将不胜感激。谢谢 bcrypt.hash(newUser.password, salt, function(err, hash) { 这是我的package.json文件 { "name": "cars", "version": "1.0.0", "description": "car buying application", "main": "a

我是一个新手,正在尝试创建一个简单的身份验证登录/注册表单。“新用户”是未定义的,我真的不知道为什么。。。。如有任何建议,我们将不胜感激。谢谢

bcrypt.hash(newUser.password, salt, function(err, hash) {


这是我的package.json文件

 {
  "name": "cars",
  "version": "1.0.0",
  "description": "car buying application",
  "main": "app.js",
  "scripts": {
   "start" : "nodemon"
  },
 "author": "",
  "license": "ISC",
  "dependencies": {
  "bcryptjs": "^2.4.3",
  "body-parser": "^1.18.3",
  "bootstrap": "^4.1.3",
  "connect-flash": "^0.1.1",
  "ejs": "^2.6.1",
  "express": "^4.16.4",
  "express-messages": "^1.0.1",
  "express-session": "^1.15.6",
   "mongojs": "^2.6.0",
   "passport": "^0.4.0",
   "passport-local": "^1.0.0",
   "pug": "^2.0.3"
  }
 }

确保已安装主体解析器。您的正文可能不是JSON格式

当您在
{}
块中声明它,但立即关闭该块时,它实际上是一个no-op

在原始代码中:

  // newUser = undefined
  } else {
    let newUser = {
      name: name,
      email: email,
      username: username,
      password: password
    };
    // newUser = Object
  }
  // newUser = undefined
您可以尝试以下方法:

 let newUser;
 // newUser = undefined
 ....
  } else {
    newUser = {
      name: name,
      email: email,
      username: username,
      password: password
    };
    // newUser = Object
  }
  // newUser = Object

谢谢你的回复!我确实安装了body解析器-版本“1.18.3”这是您的原始代码,您应该使用
var
重写它,或者将
let newUser
放在块外。添加了一个简单的编辑版本
 let newUser;
 // newUser = undefined
 ....
  } else {
    newUser = {
      name: name,
      email: email,
      username: username,
      password: password
    };
    // newUser = Object
  }
  // newUser = Object