首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EJS ReferenceError

EJS ReferenceError
EN

Stack Overflow用户
提问于 2022-10-24 15:21:47
回答 1查看 50关注 0票数 1

我试图将数据从Express路由传递到EJS,但我一直在获取一个ReferenceError。这个页面应该显示员工的电子邮件地址和他们的角色:

代码语言:javascript
复制
<%- include("./partials/header"); -%>
<body class="bg-slate-900 mx-4">
    <%- include("./partials/navigation"); -%>
    <div class="text-white">
        <table class="text-white">
            <thead>
                View Employees
            </thead>
            <th>
                Email
            </th>
            <th>
                Role
            </th>
            <% employees.map((employee) => { %>
                <tr>
                    <td><%=employee.email%></td>
                    <td><%=employee.role%></td>
                </tr>
            <% }) %>
        </table>
    </div>
</body>

以下是速递路由代码:

代码语言:javascript
复制
app.get('/view_employees', (req, res) => {
    const employees = [
        {email: 'abrown@pd.com', role: 'Administrator'},
        {email: 'jhoffman@pd.com', role: 'HR Representative'},
        {email: 'tcooper@pd.com', role: 'HR Representative'},
        {email: 'vsanders@pd.com', role: 'Employee'},
        {email: 'crollins@pd.com', role: 'Employee'},
        {email: 'pjackson@pd.com', role: 'Employee'},
        {email: 'xwoods@pd.com', role: 'Employee'},
    ];

    res.render('/view_employees', {employees: employees});
});

这是完全错误。Tl;dr雇员在EJS中没有定义:

代码语言:javascript
复制
ReferenceError: A:\Node\workplace_incident_reporter\src\views\view_employees.ejs:15
    13|                 Role

    14|             </th>

 >> 15|             <% employees.map((employee) => { %>

    16|                 <tr>

    17|                     <td><%=employee.email%></td>

    18|                     <td><%=employee.role%></td>


employees is not defined
    at eval ("A:\\Node\\workplace_incident_reporter\\src\\views\\view_employees.ejs":16:8)
    at view_employees (A:\Node\workplace_incident_reporter\node_modules\ejs\lib\ejs.js:703:17)
    at tryHandleCache (A:\Node\workplace_incident_reporter\node_modules\ejs\lib\ejs.js:274:36)
    at exports.renderFile [as engine] (A:\Node\workplace_incident_reporter\node_modules\ejs\lib\ejs.js:491:10)
    at View.render (A:\Node\workplace_incident_reporter\node_modules\express\lib\view.js:135:8)
    at tryRender (A:\Node\workplace_incident_reporter\node_modules\express\lib\application.js:657:10)
    at Function.render (A:\Node\workplace_incident_reporter\node_modules\express\lib\application.js:609:3)
    at ServerResponse.render (A:\Node\workplace_incident_reporter\node_modules\express\lib\response.js:1039:7)
    at A:\Node\workplace_incident_reporter\app.js:18:9
    at Layer.handle [as handle_request] (A:\Node\workplace_incident_reporter\node_modules\express\lib\router\layer.js:95:5)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-24 16:07:20

这是确保您使用nodemon app.js而不是node app.js测试应用程序的另一种情况。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74183369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档