我一直在努力将express-session设置到我的TS项目中,当我做基本设置时(JS方式),我创建了一个在每个API请求时调用的MW,这样我就可以在我的会话中创建或不创建一个新的用户数组。
import {Request, Response, NextFunction} from 'express'
module.exports = (req: Request, res: Response, next: NextFunction) => {
console.log('session checker : ', req.session)
if (!req.session){
req.session.user = []
console.log('session initialized')
}
next();
}
问题出在. user上,TS向我显示此错误
Property 'user' does not exist on type 'never'.
你有办法克服吗?
先谢谢你,
保罗
1条答案
按热度按时间bvhaajcl1#
根据express-session类型的源代码,您需要自己定义SessionData中可用的属性(在代码库中的某个地方):
我建议您这样做,因为您更了解用户具有哪些属性:
例如,(可能您有不同的数据)在您项目的index.d.ts文件中: