如何在节点应用程序中使用物化吐司

how to use materialize toast in node app

我有一个 node/express 应用程序。在前端,我正在使用 materialize css 并且我想在我的用户注销时使用它的 toast 功能。

以下是我的注销路径的代码:

// logout user
router.get('/logout', (req, res) => {
    req.logout();
    req.flash('success_msg', 'You are logged out');
    res.redirect('/');
});

我想在我的用户注销时使用如下内容:

 M.toast({html: 'I am a toast!'})

我有一个名为 _msg.handlebars 的部分,我在其中定义了错误和成功消息的部分,这些部分由我的 server.js:

中的全局变量捕获
{{#if success_msg}}
<div class="alert alert-success">{{success_msg}}</div>
{{/if}} {{#if error_msg}}
<div class="alert alert-danger">{{error_msg}}</div>
{{/if}} {{#if error}}
<div class="alert alert-danger">{{error}}</div>
{{/if}}

server.js 文件中的全局变量:

// Global variables
app.use(function (req, res, next) {
    res.locals.success_msg = req.flash('success_msg');
    res.locals.error_msg = req.flash('error_msg');
    res.locals.error = req.flash('error');
    res.locals.user = req.user || null;
    next();
});

所以我不想显示文本或警报,而是想使用物化 css toast。

请指教!

我修改了我的 _msg.handlebars 如下:

{{#if success_msg}}

<body onload="M.toast({html: '{{success_msg}}'})">

</body>
{{/if}} {{#if error_msg}}

<body onload="M.toast({html: '{{error_msg}}'})">

</body>
{{/if}} {{#if error}}

<body onload="M.toast({html: '{{error}}'})">

</body>
{{/if}}

到目前为止工作完美,但如果有更好的建议请提出建议。