Javascript 当实例化为字符串时,项不是构造函数
我试图创建一个对象的实例,但我得到: 类型错误:窗口[comps[i]]不是构造函数 它发生在这个方法中(在for循环中): 然后,组件类如下所示:Javascript 当实例化为字符串时,项不是构造函数,javascript,typescript,Javascript,Typescript,我试图创建一个对象的实例,但我得到: 类型错误:窗口[comps[i]]不是构造函数 它发生在这个方法中(在for循环中): 然后,组件类如下所示: class Component { public constructor() { } } 类组件{ 构造函数(){ log(“创建的组件”); } } 类TestComponent扩展组件{ 构造函数(){ 超级(); } 单击(){ 警惕(“你点击了我”); } } 这是。_components=new Array();
class Component {
public constructor() {
}
}
类组件{
构造函数(){
log(“创建的组件”);
}
}
类TestComponent扩展组件{
构造函数(){
超级();
}
单击(){
警惕(“你点击了我”);
}
}
这是。_components=new Array();
getComponents();
函数getComponents(){
//注意TestComponent不是“TestComponent”
让comps=[TestComponent];
对于(变量i=0;i }
getAttribute('component')返回什么?它返回TestComponent
您是否尝试将public构造函数(){super();}
添加到TestComponent
类中?另外,您不需要将public
添加到constructor
函数,您可能需要将TestComponent
添加到窗口对象<代码>window.TestComponent=TestComponent代码>
class TestComponent extends Component {
public click() {
alert('you clicked me');
}
}
class Component {
public constructor() {
}
}