Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 自动将类注册到窗口_Javascript - Fatal编程技术网

Javascript 自动将类注册到窗口

Javascript 自动将类注册到窗口,javascript,Javascript,我想知道,有没有一种方法可以自动将类注册到窗口?现在要这样做,我必须这样做: class MyClass { } window.MyClass = MyClass; 我想让window.MyClass=MyClass自动发生,有没有办法做到这一点?一种方法是创建一个注册类的函数。[Classes]有一个name属性,可用于在全局空间中注册名称。这确实需要您在函数中声明类,但在代码进入浏览器之前,不需要进行某种代码转换,这是您所能做的最好的事情 功能寄存器(c){ console.log(

我想知道,有没有一种方法可以自动将类注册到窗口?现在要这样做,我必须这样做:

class MyClass {

}

window.MyClass = MyClass;

我想让
window.MyClass=MyClass
自动发生,有没有办法做到这一点?

一种方法是创建一个注册类的函数。[Classes]有一个
name
属性,可用于在全局空间中注册名称。这确实需要您在函数中声明类,但在代码进入浏览器之前,不需要进行某种代码转换,这是您所能做的最好的事情

功能寄存器(c){
console.log('注册'+c.name);
窗口[c.name]=c;
}
注册(A类){
构造函数(){
log('Created ClassA');
}
});
注册(B类){
构造函数(){
log('Created ClassB');
}
});
寄存器(C类){
构造函数(){
log('Created ClassC');
}
});
新类别a();
新类别b();

新类别c()一种方法是创建一个注册类的函数。[Classes]有一个
name
属性,可用于在全局空间中注册名称。这确实需要您在函数中声明类,但在代码进入浏览器之前,不需要进行某种代码转换,这是您所能做的最好的事情

功能寄存器(c){
console.log('注册'+c.name);
窗口[c.name]=c;
}
注册(A类){
构造函数(){
log('Created ClassA');
}
});
注册(B类){
构造函数(){
log('Created ClassB');
}
});
寄存器(C类){
构造函数(){
log('Created ClassC');
}
});
新类别a();
新类别b();

新类别c()以何种方式自动执行?您不能只键入
classmyclass{…}
将其设置为全局,因此需要某种类型的脚手架来自动处理连接。你是在寻找比你现有的更短的脚手架吗?您是否在一个地方声明了多个要成为全局的类?您是否有兴趣使用任何代码转换器(如Babel)为您自动注入
window.MyClass=MyClass
?基本上,我正在创建一个框架,不必每次创建新类时都注册该类就好了。因此,我有一个HTML属性,看起来像这个
component=“MyClass”
,然后像这样创建
newwindow[name]()
,其中name等于
MyClass
。除非我有寄存器部分,否则这不起作用,我希望自动发生。以什么方式自动发生?您不能只键入
classmyclass{…}
将其设置为全局,因此需要某种类型的脚手架来自动处理连接。你是在寻找比你现有的更短的脚手架吗?您是否在一个地方声明了多个要成为全局的类?您是否有兴趣使用任何代码转换器(如Babel)为您自动注入
window.MyClass=MyClass
?基本上,我正在创建一个框架,不必每次创建新类时都注册该类就好了。因此,我有一个HTML属性,看起来像这个
component=“MyClass”
,然后像这样创建
newwindow[name]()
,其中name等于
MyClass
。除非我有寄存器部分,否则这不起作用,我希望它能自动发生。我认为这是一种更优雅的处理方式!非常感谢。我认为这是一个更优雅的处理方式!非常感谢。