![](/img/trans.png)
[英]How I can validate each object's field in array using class-validator in nest.js
[英]How can I use service in a helper class in nest.js?
我在app.module.ts
文件中導入 redis 模塊:
@Module({
imports: [
TypegooseModule.forRoot('mongodb://mongo:27017/test', {
useNewUrlParser: true,
useUnifiedTopology: true,
useCreateIndex: true,
}),
RedisModule.register({ url: 'redis://sessions' }),
UsersModule,
AuthModule,
],
controllers: [],
providers: [],
})
export class AppModule {}
我想創建一個幫助類SessionManager
來管理用戶的會話(在 Redis 中存儲、更新、刪除它們),例如這樣的:
import { RedisService } from 'nestjs-redis';
import { User } from 'src/users/schemas/user.schema';
import { IUserSessions } from '../interfaces/Session.interface';
class SessionManager {
constructor(private redisService: RedisService) {}
saveUserSession(user: User, userAgent: string) {}
static getSessionsByUserId(userId: string): IUserSessions {
const client = this.redisService.getClient()
const sessions = client.hmgetall(userId)
return sessions
}
}
export default SessionManager
並在我的auth.service.ts
使用它。 我怎么做? 它是否必須表示為某個 Nest.js 實體(模塊或提供者)?
最終創建了一個單獨的sessions
模塊,將我的服務添加為提供者並導出它,然后在我想要的模塊中使用它:
import { Module } from '@nestjs/common';
import { SessionsService } from './sessions.service';
@Module({
providers: [SessionsService],
exports: [SessionsService]
})
export class SessionsModule {}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.