意外令牌{编译EJS时

问题描述 投票:0回答:1

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

<% 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代码给出了意外的标记{错误,因为括号和括号似乎加起来了

javascript node.js ejs
1个回答
0
投票
<% newListItems.forEach(function(item){ %>
    <% if (currentClasses.includes(item.class)) { %>
    <div class="item">
        <input type="checkbox">
        <p class="ptag"><%= item.name %></p>

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

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

© www.soinside.com 2019 - 2024. All rights reserved.