1

我创建了快速应用程序并实现了 Flash 消息。现在,当我从验证错误中获取 Flash 消息时,我正在将该消息传递给查看。但是当我尝试在视图中获取消息时,我无法看到,因为应用程序显示了一堆错误行。如何在基于 Ejs 视图引擎的视图中显示错误消息。

这是存储在 req.flash('fail_msg') 中的错误消息

[ { location: 'body',
param: 'email',
value: '',
msg: 'Email must be valid' },

{ location: 'body', param: 'phone', value: '', msg: '需要电话号码' }, { location: 'body', param: 'password', value: '', msg: '密码is required' }, { location: 'body', param: 'agreeTerms', value: undefined, msg: '必须同意条款和条件' } ]

来自我的 routes.js

function checkValidationResult(req, res, next) {
    const result = validationResult(req);
    if (result.isEmpty()) {
        return next();
    }
    req.flash('fail_msg', result.array());
    res.render('signup', { message: req.flash('fail_msg')});
}

这是来自 ejs 模板

<%if('message'){%>
        <% message.foreach(function(errors){ %>
          <%=errors.msg%>
       <% }) %>
<%}%>

4

0 回答 0