在打字稿中连接 redis 设置

iPh*_*Dev 2 typescript

根据文档,这是创建重新存储的方法:

var session = require('express-session');
var RedisStore = require('connect-redis')(session);

app.use(session({
    store: new RedisStore(options),...
}));
Run Code Online (Sandbox Code Playgroud)

我正在将它们转换为打字稿:

import * as session from 'express-session';
import * as RedisStore from 'connect-redis';

app.use(session({
    store: new (RedisStore(session))(options),...
}));
Run Code Online (Sandbox Code Playgroud)

但是,我收到一个错误。你如何转换这行代码: var RedisStore = require('connect-redis')(session);

iPh*_*Dev 7

我已经想通了:

import * as session from 'express-session';
import * as connectRedis from 'connect-redis';
let RedisStore = connectRedis(session);

app.use(session({
    store: new RedisStore({client: redis.createClient(6379, "localhost")}),...
}));
Run Code Online (Sandbox Code Playgroud)


Dav*_*han 6

这有效:

import connectRedis from 'connect-redis';
import session from 'express-session';
const RedisStore = connectRedis(session);

 app.use(
        session({
            secret: 'secret',
            store: new RedisStore({host: '127.0.0.1', port: 6379}),
            resave: false,
            saveUninitialized: false
        })
    );
Run Code Online (Sandbox Code Playgroud)