简体   繁体   English

我试图从后端显示错误但错误发生 EJS

[英]I tried to display Error from Backend But error happens EJS

When I tried to display an error message from the backend using EJS I'm getting some errors?当我尝试使用EJS从后端显示错误消息时,我遇到了一些错误? Can someone help me fix this???有人可以帮我解决这个问题吗???

Here is a snippet from my home.ejs file:-这是我的home.ejs文件中的一个片段:-

          <% if (err) { %>
          <!-- contact-warning -->
            <div id="message-warning">
              <p><%= err.msg %></p>
            </div>
          <% } %>

          <% if (success) { %>
          <!-- contact-success -->
            <div id="message-success">
              <i class="fa fa-check"></i> <br />
              <p><%= success.msg %></p>
            </div>
          <% } %>

and here is my node code snippet这是我的node代码片段

if (error) {
      console.log(error);
      let err = {
        msg: "Email Sent failed",
      };
      res.render("home", { err });
    } else {
      let success = {
        msg: "Your message was sent, thank you!",
      };
      res.render("home", { success });
    }

and I'm getting this error err is not defined我得到这个错误err is not defined

For the if/else branch, you still need to pass the variables used in the ejs view.对于if/else分支,您仍然需要传递ejs视图中使用的变量。

if (error) {
  console.log(error);
  let err = {
    msg: 'Email Sent failed',
  };
  res.render('home', { err, success: null });
} else {
  let success = {
    msg: 'Your message was sent, thank you!',
  };
  res.render('home', { success, err: null });
}

You also could use typeof in if without passing other variables to your ejs . if不将其他变量传递给您的ejs ,您也可以使用typeof in 。

<% if (typeof err !== "undefined") { %>
    <div id="message-warning">
    <p><%= err.msg %></p>
    </div>
<% } %>

<% if (typeof success !== "undefined") { %>
    <div id="message-success">
    <i class="fa fa-check"></i> <br />
    <p><%= success.msg %></p>
    </div>
<% } %>

You could use original logic without passing null.您可以使用原始逻辑而不通过 null。

if (error) {
    console.log(error);
    let err = {
        msg: "Email Sent failed",
    };
    res.render("home", {
        err
    });
} else {
    let success = {
        msg: "Your message was sent, thank you!",
    };
    res.render("home", {
        success
    });
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM