【问题标题】:Unable to render error page in ejs using nodeJS无法使用nodeJS在ejs中呈现错误页面
【发布时间】:2019-03-16 07:58:17
【问题描述】:

我希望在路径=== '/' else ''时激活类。我使用三元运算符来激活类。当路径相等时,该类处于活动状态,但当路径不相等时,它无法呈现我给出的错误页面

<header class="main-header">
    <nav class="main-header__nav">
        <ul class="main-header__item-list">
            <li class="main-header__item"><a class="<%= path === '/' ? 'active' : '' %>" href="/">Shop</a></li>
            <li class="main-header__item"><a class="<%= path === '/admin/add-product' ? 'active' : '' %>" href="/admin/add-product">Add Product</a></li>
        </ul>
    </nav>

如果它等于路径,代码运行良好,但如果它不等于,当我想呈现错误页面时

check this image for error message

【问题讨论】:

    标签: node.js ejs


    【解决方案1】:

    首先,在包含语句中省略 .ejs

    <%- include('includes/navigation') %>
    
    <%- include('includes/end') %>
    

    接下来,在您的 app.js 上,您需要将路径作为 context 传递给视图:

    app.get('/', function(req, res) {
      const path = '/';
      res.render('somePage', {path:path});    
    });
    
    app.get('/admin/add-product', function(req, res) {
      const path = '/admin/add-product';
      res.render('somePage', {path:path});    
    });
    

    现在,您应该不会收到“未定义路径”错误。

    希望有帮助!

    【讨论】:

    • 感谢它在提供 404 错误页面的路径后可以正常工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-15
    • 2020-05-31
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-22
    相关资源
    最近更新 更多