我使用connect-mongo直接使用mongodb驱动程序在typescript项目中存储会话,而不使用moongose。我用clientPromise对它进行了初始化,如下所示:
const store = new MongoStore({
clientPromise: getMongoPromise(),
collection: config.get('sessionCollection'),
touchAfter: 24 * 3600,
ttl: Number(config.get('sessionDuration')) * 24 * 3600,
});当我在开发模式下(使用ts-node --transpile-only src/start.ts)运行我的应用程序时,一切正常,但当我尝试使用tsc编译它时,它给出了这个错误:
$ tsc
node_modules/connect-mongo/src/types.d.ts(11,27): error TS2307: Cannot find module 'mongoose'.
error Command failed with exit code 2.我没有在我的应用程序中使用moongose,所以我不想安装它只是为了消除这个错误。有没有其他方法可以解决这个问题?
谢谢!
发布于 2019-11-28 22:42:57
实际上我找到了,我错过了@types/connect-mongo开发包。我相信没有警告我丢失类型的VSCode,但我错了。
安装后,编译现在可以正常运行:
yarn add -D @types/connect-mongo发布于 2019-11-28 22:42:11
对于typescript,必须在production dependencies npm i --save mongoose中安装mongoose
而不是在devDependencies npm i --save-dev mongoose。
https://stackoverflow.com/questions/59091172
复制相似问题