我正在摆弄 Express JS,并且正在使用express-session。app.use(session())如果我不把中间件放在第一位的话是行不通的
app.use(session({
name: 'server-session-cookie-id',
secret: 'my express secret',
saveUninitialized: true,
resave: true
}));
app.use('/', routes);
app.set("view engine", "pug");
app.set("views", path.join(__dirname + "/views"));
app.use(flash());
Run Code Online (Sandbox Code Playgroud)
如果app.use(session())先写它会说 thereq.session.someVariable未定义。
有人能解释一下 Express 如何调用 app.use 中间件吗?
我想知道如何在两个布尔变量之间切换.这在第一次运行代码时正常工作,但在第二次运行后输出不正确.
输出第一次运行switchPlayer():
player1.isActive = false,
player2.isActive = true
Run Code Online (Sandbox Code Playgroud)
输出第二次运行switchPlayer():
player1.isActive = true,
player2.isActive = true
Run Code Online (Sandbox Code Playgroud)
以下是我写的代码:
var Player = function(score, isActive){
this.score = score;
this.isActive = isActive;
}
Player.prototype.toggleIsActive = function(){
if(this.isActive === false){
this.isActive = true;
} else{
this.isActive = false;
}
}
function switchPlayer(){
if(player1.isActive === true){
player1.toggleIsActive();
player2.toggleIsActive();
} else{
player1.isActive = true;
}
}
var player1 = new Player("0", true);
var player2 = new Player("0", false);
switchPlayer();
switchPlayer();
Run Code Online (Sandbox Code Playgroud)