.ts 文件可以包含多个类吗

Man*_*dha 5 angular5

我想创建一个.ts包含我的数据模型的文件。每个数据模型都映射到一个JSON我将从服务器发送或接收的数据。例如。对于用户个人资料,Json 是

 {
  "firstname" : "d",
  "lastname" : "d",
  "email" : "dd",
  "password" : "d"
}
Run Code Online (Sandbox Code Playgroud)

对于上面的内容,我想创建一个类,如下所示

export class UserProfile {

  constructor (public firstname:string,
               public lastname:string,
               public email:string,
               public password:string){}
}
Run Code Online (Sandbox Code Playgroud)

服务器可能发送的另一个 JSON 是

{
result:"success"
addition-info:"something"
}
Run Code Online (Sandbox Code Playgroud)

上面的类是

export class Result{

  constructor (public result:string,
               public additionalInfo:string){}
}
Run Code Online (Sandbox Code Playgroud)

Angular 中是否有关于如何为数据模型创建文件的最佳实践?我可以创建一个.ts文件BackendApiModels.ts来存储所有类,还是应该.ts为每个数据模型创建一个文件?我什至不知道是否可以创建一个.ts可以包含多个类的文件,例如

后端API

 export class UserProfile {

      constructor (public firstname:string,
                   public lastname:string,
                   public email:string,
                   public password:string){}
    }

    export class Result{

      constructor (public result:string,
                   public additionalInfo:string){}
    }
Run Code Online (Sandbox Code Playgroud)

是否可以在 Angular 中创建类似上面的文件(多个类且类的名称与文件名不匹配)?

小智 8

从同一个 .ts 文件导出多个模型类或接口是完全可能且有效的...

export class Attachment {
  id: number;
  name: string;

  constructor(attachment) {
    this.id = attachment.id;
    this.name = attachment.name;
  }
}

export class Permissions {
  draftable: boolean;
  completable: boolean;

  constructor(perms) {
    this.draftable = perms.draftable;
    this.completable = perms.completable;
  }
}
Run Code Online (Sandbox Code Playgroud)