Как сделать уведомление с уведомлением express -fla sh - PullRequest
0 голосов
/ 08 марта 2020

Я использую express вместе с express-flash-notification для рендеринга сообщения fla sh. Проблема в том, что сообщение не отображается, когда оно отображает стандартное представление fla sh, которое в моем примере flash.hbs. Ниже приведена конфигурация моего сервера

 let express =require("express");
 let exphbs = require("express-handlebars");
 let flash = require("express-flash-notification");
 let bodyParser = require("body-parser");
 let path = require("path");
 let session = require("express-session");
 let app = express();
 app.use(cookieParser());
 app.use(session({
      secret:"secret",
      save:true,
      saveUninitialized:true
}));


app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:true}));
app.set("views","views");
app.set("view engine","hbs");
app.engine("hbs",exphbs({
    extname:"hbs",
    layoutsDir:path.join(__dirname,"views"),
    defaultLayout:"template",
    partialsDir:path.join(__dirname,"views/partials")
})) ;

app.use(flash(app));

// to register
app.get("/register",(req,res)=>{
    res.render('register')  // output the registration form 
});

 // handle registration request
app.post("/register",(req,res)=>{
    req.flash("success","you are connected u can log in",false);  // setting flash msg
    res.redirect("/login")
});

 //the login page after registration succeed
app.get("/login",(req,res)=>{
  res.render("login");
});
let port = process.env.PORT || 5000;
app.listen(port,()=>{
   console.log( `The server is running on port ${port}`);
});

My fla sh Просмотр файла flash.hbs is

<div style="color:red" >NO LOCAL MESSAGE {{success}}</div>

Локальная переменная success не отображается, но текст перед ( НЕТ ЛОКАЛЬНОГО СООБЩЕНИЯ ) отображается ЧТО НЕПРАВИЛЬНО?

Примечание: все логи приложения c были удалены, чтобы облегчить понимание.

...