首页 > 解决方案 > 编译 ejs 时在 partials\messages.ejs 中的参数列表后缺少 )

问题描述

以下是注册页面的代码,我在解析 messages.ejs 文件时遇到了代码问题。我在 <%- include('./partials/messages') %> 行有语法错误

语法错误:

missing ) after argument list in D:\Website Practice\Nodejs\node_passport_login_project\views\partials\messages.ejs while compiling ejs

请帮忙

<div class="row mt-5">
    <div class="col-md-6 m-auto">
      <div class="card card-body">
        <h1 class="text-center mb-3">
          <i class="fas fa-user-plus"></i> Register
        </h1>
        <%- include('./partials/messages') %>
        <form action="/users/register" method="POST">
          <div class="form-group">
            <label for="name">Name</label>
            <input
              type="name"
              id="name"
              name="name"
              class="form-control"
              placeholder="Enter Name"
              value="<%= typeof name != 'undefined' ? name : '' %>"
            />
          </div>
          <button type="submit" class="btn btn-primary btn-block">
            Register
          </button>
        </form>
        <p class="lead mt-4">Have An Account? <a href="/users/login">Login</a></p>
      </div>```
    </div>
  </div>

消息文件中的代码如下

<% if( typeof errors != 'undefined' ){ %>
    <% errors.forEach((error){ %>
        <%= error.msg %>
    <% }) %>
<% } %>

标签: javascriptnode.jsejs

解决方案


您需要定义function并通过argument尝试,希望对您有所帮助!

    <% if(typeof errors != 'undefined' ){ %> 
      <% errors.forEach(function(error) { %>
          <%= error.msg %>
        <% }); %>
     <% } %>

推荐阅读