RedisStore - TypeError:无法读取undefined的属性'prototype'

Gui*_*lla 10 node.js express

当我运行应用程序时,我收到了该消息.我想按照这里描述的说明进行操作

这是我的app.js文件的一部分

var express = require('express');
var RedisStore = require('connect-redis')(express); 
var redisStore = new RedisStore(); // setup redis
var flash = require('connect-flash');
var passport = require('passport');
var LocalStrategy = require('passport-local').Strategy;
var routes  = require('./routes')
Run Code Online (Sandbox Code Playgroud)

And*_*nak 34

如果您想使用Express 4.x.

改变

var express = require('express');
var RedisStore = require('connect-redis')(express);
Run Code Online (Sandbox Code Playgroud)

var session = require('express-session')
var RedisStore = require('connect-redis')(session);
Run Code Online (Sandbox Code Playgroud)

还记得安装快速会话:

npm install express-session --save
Run Code Online (Sandbox Code Playgroud)

如果您打算使用Express 3.x,请选择connect-redis的兼容版本1.4.7 以避免错误.

 npm install connect-redis@1.4.7 --save
Run Code Online (Sandbox Code Playgroud)

要获取有关将Express 3迁移到版本4的更多信息:

  • 对于任何通过Jim R. Wilson的'Node.js正确方法'工作并且在第8章中运行server.js时遇到问题的人来说,这对你有帮助,因为它帮助了我!:) (3认同)