关于express框架最后那个路由

凉茶不凉 113个月前 提问
0

将app.js内相关get和post请求删掉,按照文章所提要求引入相关js,点击登陆报错message找不到,实在摸不着头脑,求指导,谢谢

  • 0
    ciga 113个月前 回答

    我猜测你的中间件是在后面加载的,类似这样:

    var login = require("./login")(app);
    ...
    app.use(function(req,rsp,next){...})

    所以在执行login逻辑时,你的request.locals.message还没有设置。调换一下顺序:

    app.use(....);
    require("./login")(app);

    应该就可以了。


  • 0
    凉茶不凉 113个月前 回答
    app.use(function(req, res, next){
    res.locals.user = req.session.user;
    var err = req.session.error;
    res.locals.message = '';
    if (err)
    res.locals.message = '<div style="margin-bottom:20px;color:red;">' + err + '</div>';
    next();
    });
    app.js里不是已经定义了为erro值么,如果写死了,后面不同的错误的信息怎么进去呢,实在很菜,见笑了。谢谢
  • -1
    ciga 113个月前 回答

    你在login.html中使用了message变量,因此需要在渲染视图时在上下文中设置message的值:

    rsp.render('login.html',{message:'who are you?'});