首页 > 解决方案 > 无法在 ejs 文件上呈现“try and catch”

问题描述

我尝试通过使用“try and catch”处理错误来渲染我的代码并执行一些逻辑。但我得到一个错误:

除了“try and catch”之外,我的代码中的其他所有内容似乎都可以与 .ejs 文件一起使用

我尝试使用“try and catch”的简单示例,但代码仍然无法正常工作

<% try {console.log("Success"); %>
<% } %>
<% catch(err) {console.log("Fail"); %>
<% } %>

我收到这样的错误:

在编译 ejs 时在 /home/ubuntu/workspace/newApp/views/partials/oxfordHtml.ejs 中尝试时缺少 catch 或 finally 如果上述错误没有帮助,您可能想尝试 EJS-Lint:

标签: javascriptejs

解决方案


根据您的评论,这里是我如何将数据从服务器端传递到视图(并循环对象)的示例

app.get('/about', (req, res) => {
  const names = [ { first_name: 'Thuan', surname: 'Thien' }, { first_name: 'Richard', surname: 'Lewis'} ];
  res.render('about', { names });
});

然后在您的视图中,您可以像这样遍历对象

<% names.forEach((name) => { %>
  <p>First Name: <%= name.first_name %><p>
  <p> Surname: <%= name.surname %></p>
<% } %>

尝试硬编码类似的东西,然后在使用你的实际 JSON 对象之后


推荐阅读