我正在尝试在一个Typescript项目中使用express-session和express-mysql-session。以下是代码的相关部分:
import * as express from "express";
import * as expressSession from "express-session";
import * as expressMySqlSession from "express-mysql-session";
this.express = express();
const sessionStore = new expressMySqlSession(sessionStoreConfig, this.dbConnection);
const sessionHandler = expressSession({
...,
store: sessionStore
});
this.express.use(sessionHandler);
因为`store`选项的类型是`expressSession.Store | expressSession.MemoryStore | undefined`,而`sessionStore`的类型是`MySQLStore`,所以代码无法编译。你做错了什么?
session
被传递给require('express-mysql-session')
的结果,这是一个你似乎遗漏的步骤。 - robertklepimport * as expressSession from "express-session";
import expressSession = require("express-session");
第一个是较新的ES6语法。但我该如何在ES6语法中编写require("xyz")(someparameter)
?此外,这真的能解决类型不匹配的问题吗? - Timo Kunze