Флэш-сообщение показывает «1», оно не показывает флеш-сообщение - PullRequest
0 голосов
/ 22 июня 2019

У меня другая проблема с флеш-сообщениями, и каждый раз, когда я открываю страницу входа с флеш-сообщением, отображается номер «1».Не знаю, что это значиткогда я открываю страницу входа и вижу результат «1» вместо флэш-сообщения.

Ответы [ 2 ]

0 голосов
/ 24 июня 2019

Перед рендерингом представления вам просто нужно сохранить локальные сообщения, используя флэш-память, как показано ниже:

request.flash("error","Error Occured");
response.locals.messages = request.flash();
res.render('login',{
     msg: req.flash('error')
})

После того, как вы настроили локальные сообщения, вы можете получить их.Здесь сообщения является основным объектом, который в качестве ключа называется ошибкой.Таким образом, в представлении вы можете получить к нему доступ следующим образом:

<% if (locals.messages) { %>

    <script language="javascript">
       alert("<%= messages.error %>");
    </script>

<% } %>

Вы можете выполнить все, что захотите, в условии if.

0 голосов
/ 23 июня 2019

Вы должны присвоить данные req.flash перед обработкой ответа, тогда вы можете передать экземпляр назначенных данных при визуализации представления.

exports.loginForm = (req, res) => {
    req.flash('error', 'welcome in login page');
    res.render('login',{
         msg: req.flash('error')
    })
};
...