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の問題ではありません。エクスポートのみを使用しているときに、__proto__
が設定されたオブジェクトを取得しています。
ローカルのexports
変数ではなく、module.exports
に割り当てる必要があります。