在初始化user module完成后,我希望创建系统默认用户(root)
我的实现:
export class UserModule implements OnModuleInit {
constructor(private readonly otherService: UserService) {}
onModuleInit() {
// 在模块初始化后执行的逻辑,这个不会执行
console.log('Module initialized!')
this.otherService.createDefaultUser()
}
当构造函数不传参的时候,是可以调用onModuleInit 里面的打印的,上面的传参的就不好使
export class UserModule implements OnModuleInit {
constructor() {}
onModuleInit() {
// 在模块初始化后执行的逻辑,这个会执行
console.log('Module initialized!')
}
:创建root用户的逻辑在service中,期望能在onModuleInit 中调用创建root用户的逻辑,来达到应用初始化的时候执行一次该逻辑
async createDefaultUser(): Promise<void> {
const res = await this.UserModel.findOne({ phone: SUPER_ADMIN_PHONE })
if (!res) {
const defaultUser = {
username: 'superAdmin',
password: md5(Buffer.from('Passw0rd2024!').toString('base64')),
phone: SUPER_ADMIN_PHONE,
userId: uuidv4()
}
await this.UserModel.create(defaultUser)
}
}