通过在一个接口中定义多个属性和其他接口,并在其他接口中使用它们来解决这个问题。以下是一个示例解决方案:
interface Contact {
name: string;
email: string;
address: Address;
}
interface Address {
street1: string;
street2?: string;
city: string;
state: string;
zip: string;
}
@Component({
selector: 'app-contact-form',
templateUrl: './contact-form.component.html',
styleUrls: ['./contact-form.component.css']
})
export class ContactFormComponent implements OnInit {
contact: Contact;
constructor() { }
ngOnInit() {
this.contact = {
name: '',
email: '',
address: {
street1: '',
city: '',
state: '',
zip: ''
}
};
}
}
在上面的示例代码中,我们定义了一个名为Contact的接口,该接口包含名字,电子邮件和地址属性。 地址属性又是另一个名为Address的接口类型。然后我们在组件中实例化Contact对象,同时通过内嵌的地址对象来填充地址属性。 注意,其中一些地址属性是可选的。