繁体   English   中英

编译 EJS 时出现意外的令牌 {

[英]Unexpected token { while compiling EJS

这是代码...我试图仅在仪表板上显示具有特定 class 的项目:

<% newListItems.forEach(function(item){ %>
    <% if (currentClasses.includes(item.class) { %>
    <div class="item">
        <input type="checkbox">
        <p class="ptag"><%= item.name %></p>

    </div>
    <% }) %>
    <% }) %>

这是 app.js 代码供参考

app.get("/todolist", function (req, res) {
    if (req.isAuthenticated()) {
        const currentClasses = req.user.classes
        Item.find({}, function (err, foundItems) {
            if (foundItems.length === 0) {
                Item.insertMany(defaultItems, function (err) {
                    if (err) {
                        console.log(err)
                    } else {
                        console.log("Success!")
                    }
                })
                res.redirect("/todolist")
            } else {
                console.log(currentClasses)
                res.render("todolist", { newListItems: foundItems })
            }

        })
    } else {
        res.redirect("/login")
    }
});

我不知道为什么 EJS 代码给出了一个意外的 token { 错误,因为括号和括号似乎加起来了

<% newListItems.forEach(function(item){ %>
    <% if (currentClasses.includes(item.class)) { %>
    <div class="item">
        <input type="checkbox">
        <p class="ptag"><%= item.name %></p>

    </div>
    <% } %>
    <% }) %>

您正在关闭倒数第二行中if语句的括号

暂无
暂无

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

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