如何解决如何使用Inversify注入TypeORM实体? 研究我尝试过的
我有一个User
实体,该实体具有generateToken
方法。此方法具有一个称为cipher
的依赖项,我想使用Inverisfy注入该依赖项。这可能吗?如果没有,那有什么选择呢?
研究
我见过this issue,但没有给出答案。我也不同意将我的功能移入服务层。我想要丰富的域模型,而生成令牌肯定是丰富的域模型的工作。
我尝试过的
我可以通过向public cipher: ICipher
添加一个UserEntity
属性,然后注入一个包装器类UserRepository
来共同破坏事物,就像这样:
@injectable()
export class UserRepository {
private repository: Repository<UserEntity>;
constructor(@inject(TYPES.Cipher) private cipher: ICipher) {
this.repository = getRepository(UserEntity);
}
create(data: UserEntity): UserEntity {
const user = this.repository.create(data);
user.cipher = this.cipher;
return user;
}
}
但是包装每一个Repository
方法都不是一个好的解决方案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。