何时在 angular 中进入 'implement' 界面
When to 'implement' interface in angular
我的问题可能很愚蠢,但我想澄清一下。根据我的理解,在 angular 中,我们使用接口来了解数据结构。所以假设我们有一组人的数据,我们创建一个像
这样的接口
export interface Person {
name: string;
age: string
}
我们可以直接将其导入到我们的ts文件中并指定类型
export class ComponentName implements OnInit {
data: Person[];
constructor() {}
ngOnInIt(){}
}
这个我完全理解。但我的困惑是,我们什么时候 'implement' 界面。我看到了
这样的例子
export class ComponentName implements OnInit, Person {
data: Person[];
constructor() {}
ngOnInIt(){}
}
任何帮助都将不胜感激。谢谢
在字母选项中,现在您的 ComponentName
必须有姓名和年龄字段 ;)
所以这样构造 class X implements Y
从字面上说 X
是一个 Y
还要记住,在打字稿中声明并不重要,重要的是实际结构,所以即使没有 implements Person
声明,if ComponentName
也会有 name
和 age
字段,person:Person=this
仍然有效。
我的问题可能很愚蠢,但我想澄清一下。根据我的理解,在 angular 中,我们使用接口来了解数据结构。所以假设我们有一组人的数据,我们创建一个像
这样的接口export interface Person {
name: string;
age: string
}
我们可以直接将其导入到我们的ts文件中并指定类型
export class ComponentName implements OnInit {
data: Person[];
constructor() {}
ngOnInIt(){}
}
这个我完全理解。但我的困惑是,我们什么时候 'implement' 界面。我看到了
这样的例子export class ComponentName implements OnInit, Person {
data: Person[];
constructor() {}
ngOnInIt(){}
}
任何帮助都将不胜感激。谢谢
在字母选项中,现在您的 ComponentName
必须有姓名和年龄字段 ;)
所以这样构造 class X implements Y
从字面上说 X
是一个 Y
还要记住,在打字稿中声明并不重要,重要的是实际结构,所以即使没有 implements Person
声明,if ComponentName
也会有 name
和 age
字段,person:Person=this
仍然有效。