在Typescript中,如何创建一个通用服务来调用由类型参数定义的模型上的静态方法
我想这样做:在Typescript中,如何创建一个通用服务来调用由类型参数定义的模型上的静态方法,typescript,dependency-injection,sequelize-typescript,Typescript,Dependency Injection,Sequelize Typescript,我想这样做: import {Company} from 'company.model.ts' @Service() export class CompanyService extends BaseService<Company> { constructor() { super() this.Model = Company } } @Service() export class BaseService<T extends typeof Model&g
import {Company} from 'company.model.ts'
@Service()
export class CompanyService extends BaseService<Company> {
constructor() {
super()
this.Model = Company
}
}
@Service()
export class BaseService<T extends typeof Model> {
Model: typeof T
async findAll(input) {
return await this.Model.create(input)
}
}
从'Company.model.ts'导入{Company}
@服务()
导出类公司服务扩展BaseService{
构造函数(){
超级()
这个。模型=公司
}
}
@服务()
导出类基本服务{
型号:T型
异步findAll(输入){
返回等待this.Model.create(输入)
}
}
我想对类型为typeoft
的类调用静态方法
另外,是否有一种方法可以避免将T的类型分配给实例变量?解决方案是使用:
Model: {new(): T} & typeof Sequelize.Model
感谢:解决方案是使用:
Model: {new(): T} & typeof Sequelize.Model
感谢: