Inheritance Angular2,扩展父类时如何初始化组件类(子类)?
例如,我有一个组件,一个名为ChildComponent的类从paren类扩展而来。如何初始化ChildComponent类?在angular2中,当组件在html中使用时,它会自动调用ChildComponent类,然后调用Inheritance Angular2,扩展父类时如何初始化组件类(子类)?,inheritance,angular,Inheritance,Angular,例如,我有一个组件,一个名为ChildComponent的类从paren类扩展而来。如何初始化ChildComponent类?在angular2中,当组件在html中使用时,它会自动调用ChildComponent类,然后调用super(param1,param2)?有人能举例说明吗 class ChildComponent extends Parent { constructor(param1: string, param2: string){ super(param1, p
super(param1,param2)代码>?有人能举例说明吗
class ChildComponent extends Parent {
constructor(param1: string, param2: string){
super(param1, param2);
};
}
class Parent {
constructor(param1: string, param2: string){};
}
事实上,您不能自己用Angular2初始化组件。后者自己管理它们。这就是为什么您提供给组件构造函数的参数是由框架注入的。如果你愿意,你可以打电话给超级承包商
编辑
使用TypeScript,您可以利用构造函数参数的类型。例如,要插入Http实例,请执行以下操作:
@Component({
(...)
})
export class MyComponent {
constructor(private http:Http) {}
}
您需要配置一个提供程序,以允许Angular2实例化要注入的元素。对于Http:
bootstrap(MyComponent, [ HTTP_PROVIDERS ]);
事实上,您不能自己用Angular2初始化组件。后者自己管理它们。这就是为什么您提供给组件构造函数的参数是由框架注入的。如果你愿意,你可以打电话给超级承包商
编辑
使用TypeScript,您可以利用构造函数参数的类型。例如,要插入Http实例,请执行以下操作:
@Component({
(...)
})
export class MyComponent {
constructor(private http:Http) {}
}
您需要配置一个提供程序,以允许Angular2实例化要注入的元素。对于Http:
bootstrap(MyComponent, [ HTTP_PROVIDERS ]);
那么,真正的问题是什么?super(param1,param2)时会发生什么情况代码>被调用了吗?调用父级的构造函数。这就是你的意思吗?我的意思是,就像在Java中一样,我们使用ChildComponent child=new ChildComponent(param1,param2)来初始化对象。但在angular2中,我不知道如何初始化对象?或者如何初始化类成员/属性param1和param2的值。您的类名为ChildComponent
。如果它是一个组件,你不会像Thierry说的那样自己初始化它们。那么实际的问题是什么?super(param1,param2)时会发生什么情况代码>被调用了吗?调用父级的构造函数。这就是你的意思吗?我的意思是,就像在Java中一样,我们使用ChildComponent child=new ChildComponent(param1,param2)来初始化对象。但在angular2中,我不知道如何初始化对象?或者如何初始化类成员/属性param1和param2的值。您的类名为ChildComponent
。如果它是一个组件,你不能像Thierry说的那样自己初始化它们。我以前没有使用过inject,你能给我一个关于框架如何注入参数的代码示例吗?谢谢@Thierry Templier。在这里,Http类是angular2已经定义的类,但在上面的示例中,父类是我自己创建的类。它的工作原理是一样的吗?或者你能告诉我如何处理我上面的例子吗?我以前没有使用过inject,你能给我一个关于框架如何注入参数的代码示例吗?谢谢@Thierry Templier。在这里,Http类是angular2已经定义的类,但在上面的示例中,父类是我自己创建的类。它的工作原理是一样的吗?或者你能告诉我如何处理我上面的例子吗?