小编Doe*_*ter的帖子

TypeScript:不允许多个构造函数实现

我有一个对象,我在多个服务中使用它,每个服务都应该接受一些参数,所以我创建了两个构造函数,但 TypeScript 不允许我这样做,我的例子是:

class User {
   id: number;
   username: string;
   password: string;
   email: string;
   firstName: string;
   lastName: string;
   roles: string[];

   constructor(username: string, password: string){
       this.username = username;
       this.password = password;
   }

   constructor(id: number, username: string, firstname: string, lastname: string, roles: string[]){
       this.id = id;
       this.username= username;
       this.firstname= firstname;
       this.lastname= lastname;
       this.roles = roles;
   }
   //.. and maybe another constructor also
}
Run Code Online (Sandbox Code Playgroud)

请问有什么技巧可以解决这个问题吗?


例如,当我?在构造函数中使用 Optional时:

constructor(
    public id?: number,
    public username?: string,
    public email?: string,
    public password?: string,
    public …
Run Code Online (Sandbox Code Playgroud)

typescript angular

7
推荐指数
1
解决办法
8796
查看次数

标签 统计

angular ×1

typescript ×1