用了express裡的session中間件,
物件裡沒有user!
#重定向之前給req.session.user賦值了
這是路由
.png](/img/bVNmO9)
這是render的頁面,是怎麼取到這個user值的?為什麼不需要為render裡的傳入的物件賦一個user值?工作原理是什麼?為什麼有的卻需要?
在這個頁面跳躍的下一個頁面裡,如果不賦值就辨識不到
exports.publish=function (req,res,next) {
return res.render('publish',{
key:'publish',
user:req.session.user
});
}
我想大声告诉你2017-05-16 13:34:28
樓主的問題就一個問題,node中的回調賦值
node中的回調的值和一般的回調不一樣,不能按一般的回調來理解,一般的回調是賦值的,這裡不是賦值,是方法產生了一個值直接將其賦值為User
類比於
var user.save=function(fn){
//产生了一个值,test
fn(test);
}
如上思路來理解,不懂再問我,
User.newUserSave產生了一個值,並將他賦給了user