我正在尝试从Node.js 6.2.0中的CommonJS模块导出一个ES6类。
class MyClass{
//class contents here
}
exports = MyClass;
然后在另一个模块中导入它:
var MyClass = require('/path/to/module.js')
var instance = new MyClass();
然而,我遇到了以下异常:
TypeError: MyClass is not a constructor
我该如何正确地做到这一点?
请注意,我没有使用Babel/Tranceur,而是使用最新的Node 6.2.0中实现的纯JS,根据Kangax的说法,它实现了93%的ES6。
//编辑:这不是exports与module.exports的问题。仅使用exports时,我得到一些设置了__proto__
的对象。
exports = MyClass;
不会导出任何东西。 这是无操作的。module.exports = ...;
是从模块中导出单个值的方式。重复说明了为什么exports = ...;
不起作用。 - Felix Kling