EJS语法错误:意外令牌;在编译ejs时

时间:2019-01-11 20:57:53

标签: javascript node.js ejs

尝试使用EJS(在节点服务器上)渲染模板的这一部分时,出现语法错误。

该代码部分中有错误,我确定我有一个带有标签“ <%”的pb,但我不知道在哪里。

<p>
  <% tasks.map(task => ( %>
    <%= task %>
  <% )) %> 
</p>

这是我的完整模板:

<h1>My todolist</h1>

<p><% tasks.map(task => ( %>
    <%= task %>
   <% )) %> 
</p>

<form method="post" action="/task">
    <input type="text" placeholder="Add task" name="newTask" />
    <button type="submit">Add</button>
</form>

2 个答案:

答案 0 :(得分:1)

感谢您的回答。我终于解决了问题。 “任务”不是问题。

似乎我无法使用ES6语法快速返回某些内容

我更改了此内容:

<p><% tasks.map(task => ( %>
    <%= task %>
   <% )) %> 
</p> %> 

与此:

<p><% tasks.map(task => { %>
    <%= task %>
   <% }) %> 
</p>

现在可以正常使用了!

答案 1 :(得分:0)

尝试一下:

 <h1>My todolist</h1>

    <p>
    <% tasks.map(task => {
    %> <%=task %><%});%>
    </p>



    <form method="post" action="/task">
        <input type="text" placeholder="Add task" name="newTask" />
        <button type="submit">Add</button>
    </form>