NodeJs Cannot read property 'Store' of undefined 解决办法

在使用connect-mongo包进行连接mongo数据库时,会报Cannot read property 'Store' of undefined的错误

相必这个是大家在学Nodejs开发指南时,跑microblog例子时会遇到的问题。

出现这个问题的原因是connect-mongo版本的问题,以后大家在遇到类似的问题的时候,先看看相关包目录下的readme文件,里面有这个包的新用法,已经这个版本和以前版本的区别。

我们看到connect-mongo目录下的readme文件中有这么一段话:

With express:

    var express = require('express');
    var MongoStore = require('connect-mongo')(express);

    app.use(express.session({
        secret: settings.cookie_secret,
        store: new MongoStore({
          db: settings.db
        })
      }));

With connect:

    var connect = require('connect');
    var MongoStore = require('connect-mongo')(connect);

 

所以我们需要这样修改程序:

将var MongoStore = require('connect-mongo') 换成

var MongoStore = require('connect-mongo')(express);

且var express = require('express');这句必须在前面。

 

这样修改问题就解决了。

 

 

 

你可能感兴趣的:(JavaScript,nodejs)