【问题标题】:Send error msg to ejs file in nodejs将错误消息发送到 nodejs 中的 ejs 文件
【发布时间】:2017-05-29 02:32:39
【问题描述】:

我有一个注册表单,当用户名存在或电子邮件存在时,我需要发送错误消息:

nodejs 代码:

app.post('/register', function(req, res) {


  var entity = _.pick(req.body, 'password', 'fullName', 'email', 'userName', 'phone', 'companyName', 'companyWebsite');
  // hash password
  entity.password = bcrypt.hashSync(entity.password, config.SALT_WORK_FACTOR);
  async.waterfall([
    function(cb) {
      if(entity.userName) {

        userService.findByUsername(entity.userName, function(err, user) {
          if(err) {

            cb(err);


          } else if(user) {



            cb(new errors.ValidationError('Cannot create user, userName already exists', httpStatus.BAD_REQUEST));


          } else {


            cb();
          }
        });
      } else {

        cb();
      }
    },
    function(cb) {

      if(entity.email) {

        userService.findByEmail(entity.email, function(err, user) {
          if(err) {

            cb(err);
          } else if(user) {

            cb(new errors.ValidationError('Cannot create user, email already exists', httpStatus.BAD_REQUEST));

          } else {
            cb();
          }
        });
      } else {
        cb();
      }
    },
    function(cb) {

      crud.create(entity, cb);

    },

 ], function(err, createdEntity) {
   data = {
     statusCode: httpStatus.CREATED,
      content: createdEntity
   };

if(err)
{


res.render('register', {user : undefined, success :true,successs :true});

}

else{
res.render('login', {user : undefined, success :true});
}


 });


}); 

我的ejs文件代码是:

     <div class="alert">
  <span class="closebtn" onclick="this.parentElement.style.display='none';">&times;</span> 
  <strong>oops!</strong>Cannot create user, username already exists
</div>


           <div class="alert">
  <span class="closebtn" onclick="this.parentElement.style.display='none';">&times;</span> 
  <strong>oops!</strong>Cannot create user, email already exists
</div>

如何将消息错误传递或发送到 ejs 文件..if(user):cb(new errors.ValidationError('Cannot create user, userName already exists', httpStatus.BAD_REQUEST)); 下的 nodejs 代码中显示消息错误

【问题讨论】:

    标签: html node.js express ejs


    【解决方案1】:

    您可以使用

    打印从服务器端部分传递到 ejs 的数据

    &lt;%=%&gt;

    例如: 将打印用户。

    当 err 对象存在时,将其作为第三个对象发送到 ejs 文件并以相同的方式读取。

    if(err){
    res.render('register', {user : undefined, success :true,successs :true,error: err});
    }
    

    在视图中

    <%if(typeof error == "undefined"){%>
            //Show some HTML here
     <% } else { %>
             //Show other html when you send error obejct sent
             <%= error.message%> //For Example
        <%}%>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-18
      • 1970-01-01
      • 2017-03-10
      • 2012-01-02
      相关资源
      最近更新 更多