Nest.js进阶系列四:Node.js中使用Redis原来这么简单!
import { Module, Global } from '@nestjs/common';
import { createClient } from 'redis';
import { RedisService } from './redis.service';
@Global() // 使服务全局可用
@Module({
providers: [RedisService],
exports: [RedisService],
})
export class RedisModule {}
// redis.service.ts
import { Inject, Injectable, OnModuleInit } from '@nestjs/common';
import { createClient, RedisClientType } from 'redis';
@Injectable()
export class RedisService implements OnModuleInit {
private client: RedisClientType;
async onModuleInit() {
this.client = createClient();
await this.client.connect();
}
// 定义你的存取方法
async set(key: string, value: any) {
return this.client.set(key, value);
}
async get(key: string) {
return this.client.get(key);
}
}
在这个例子中,我们创建了一个全局的RedisModule,它提供了一个RedisService,该服务在模块初始化时建立了与Redis的连接,并定义了set和get方法来存取数据。这样,我们就可以在任何需要的地方注入RedisService来使用Redis功能了。
评论已关闭