快递消息不适用于Handlebars

时间:2017-11-28 18:34:19

标签: node.js express flash handlebars.js

我曾尝试从github页面实现flash消息,即expressjs/express-messages但无法获得结果 文件是用EJS给出的,Jade没有找到带把手的解决方案

我的 index.js 文件包含express-validator,connect-flash,express-session,如下所示

.
const expressValidator = require('express-validator');
const flash = require('connect-flash');
const session = require('express-session');

// Express Session Middleware 
app.use(session({
    secret: 'keyboard cat',
    resave: true,
    saveUninitialized: true,
    // cookie: { secure: true }
  }));

 // Express Messages Middleware 
  app.use(require('connect-flash')());
  app.use(function (req, res, next) {
  res.locals.messages = require('express-messages')(req, res);
     next();
});

// Express Validator Middleware
app.use(expressValidator({
    errorFormatter: function(param, msg, value){
        var namespace = param.split('.')
        , root    = namespace.shift()
        , formParam = root;

    while(namespace.length){
        formParam += '[' + namespace.shift() + ']';
    }
    return {
        param : formParam,
        msg   : msg,
        value : value
    };
    }
}));

User.js 包含 req.flash

// Register 
router.post('/new-user',(req, res, next) => {
    let user= new User(); 
        user.fName = req.body.fName;
        user.lName = req.body.lName;
        user.userName = req.body.userName;
        user.email = req.body.email;
        user.password = req.body.password;
        user.joinedDate = req.body.joinedDate;

    user.save(function(err) {
        if (err) {     
            req.flash('danger','User cant added') ;       
           res.redirect("new-user");           
         } else {   
             req.flash('success','User added') ;       
           res.redirect("new-user");          
        } 
    })
  });
带有 message.hbs

车把文件

  {{#if errors}}
        {{#each errors}}
            <div class="error">
                {{msg}}
            </div>
        {{/each}}
    {{/if}}

newUser.hbs 包含 {{&gt;消息}}

 {{> message}}

 <div class="container">
  <div class="row">
    <div class="col-12">
        <div class="card">
            <h3 class="card-header text-center">
                <i>Register New user</i>
            </h3>

0 个答案:

没有答案
相关问题