Angular 创建角度为10的对象的对象时出错

Angular 创建角度为10的对象的对象时出错,angular,angular-directive,Angular,Angular Directive,这就是我为数据定义的模型,当用我从api获得的数据创建这个类的对象时,它给我的地址并没有提供。但在数据中,地址是提供的。 这就是我创建这个对象的方式 export class School { constructor( public name: string, public address: Address, public district: string, public contactNumber: st

这就是我为数据定义的模型,当用我从api获得的数据创建这个类的对象时,它给我的地址并没有提供。但在数据中,地址是提供的。 这就是我创建这个对象的方式

export class School {
    constructor(
        
        public name: string,
        public address: Address,
        public district: string,
        public contactNumber: string,
        public gradeRange: string,
        public currentYear: number,
        public trialAcct: boolean,
        public customerInfo: CustomerInfo,
        public composing: boolean,
        public createdAt: number,
        
    ){}
    export class Address{
            streetAddress1: string;
            streetAddress2:string;
            city: string;
            state: string;
            postalCode: string;

    }

    export class CustomerInfo{
        public customerID: string;
        public paymentID: string;
        public subscriptionID: string;
        public maskedPayment: string;
        public firstName: string;
        public lastName: string;
    }
这个.schooldata中包含数据


我不知道应该从哪里得到错误

您的构造函数接受很多参数,而不是对象

getSchool(): School {
    return new School(this.schooldata);
  }
调用构造函数的有效方法应该是

constructor(
        
        public name: string,
        public address: Address,
        public district: string,
        public contactNumber: string,
        public gradeRange: string,
        public currentYear: number,
        public trialAcct: boolean,
        public customerInfo: CustomerInfo,
        public composing: boolean,
        public createdAt: number,
        
    ){}

最好使用接口并传递它

new School(name, address, district, contactNumber, etc....);

但是怎么做呢?我应该映射这些的每一个键吗?我可以使用这个界面,但它与我正在使用的有什么不同?我怎样才能通过呢。
export interface objProp{
   name: string,
   address: Address,
   district: string,
   contactNumber: string,
   gradeRange: string,
   currentYear: number,
   trialAcct: boolean,
   customerInfo: CustomerInfo,
   composing: boolean,
   createdAt: number,
}