Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.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 为什么不能在TypeScript中导出类实例?_Javascript_Typescript - Fatal编程技术网

Javascript 为什么不能在TypeScript中导出类实例?

Javascript 为什么不能在TypeScript中导出类实例?,javascript,typescript,Javascript,Typescript,我没有找到一种在TypeScript中轻松导出类实例的方法。为了生成正确的javascript代码,我必须想出以下解决方法 var expo = new Logger("default"); export = expo; 产生 var expo = new Logger("default"); module.exports = expo; 有没有更简单的方法来实现这一点 为了生成正确的javascript代码,我必须想出以下解决方法 这不是一个解决办法。这是TS中执行根级别导出的标准方法

我没有找到一种在TypeScript中轻松导出类实例的方法。为了生成正确的javascript代码,我必须想出以下解决方法

 var expo = new Logger("default");
 export = expo;
产生

var expo = new Logger("default");
module.exports = expo;
有没有更简单的方法来实现这一点

为了生成正确的javascript代码,我必须想出以下解决方法

这不是一个解决办法。这是TS中执行根级别导出的标准方法

有没有更简单的方法来实现这一点

对<代码>导出=新变量。例如:

export = new Foo();
未来 对于ES模块,应改用
默认值
导出:

export default expo = new Logger("default");

在大多数情况下,这与根级别的导出具有相同的效果。

完全是偶然的,我发现了这种导出实例的方法:

class MyClass(){}

export default new MyClass();

一种方法是在类内创建静态实例:

export class MyClass {
  static instanceOfMyClass = new MyClass();
} 

..

var instanceOfMyClass = MyClass.instanceOfMyClass;
On是执行此操作的另一种方法:

export let expo = new Logger("default");

它的建议是可以在一个*.ts文件中导出多个类实例。

它存在一些问题,您应该阅读[为什么Typescript使用关键字“导出”来公开类和接口?][1][1]:您试图编写什么代码?看起来你已经完成了你的目标?我想写
导出新的记录器(“默认”)。陛下还是不太清楚。无论如何,谢谢。添加了一个
Yes
/
No
答案。我在这一页的其他任何答案中都看不到答案。这对你很好,因为你在事实发生3年后改进了这一点(不是讽刺)!