javascriptアプリケーションをtypescriptに変換しましたが、コードをtypescript/es6形式のエクスポートに変換したので、babel/webpackはそれらを正しくエクスポートします。デフォルトのプロパティを持つ_esModuleとしてbabel/webpackによってエクスポートされたTyepscript/es6モジュール
私は今export default...
の構文を使用しているので、babelはesModule
オブジェクトに変換します。このオブジェクトは、実際にdefault
プロパティにアタッチされています。
当然、このオブジェクト形式は、もはやそれを実際に使用している人には有効ではありません。
私はbabel-plugin-add-module-exportsプラグインをミックスに追加しようとしましたが、何も変更されていません。ミックス内のtypescriptが問題を引き起こしているのだろうかと思います。
.babelrc:
{
"plugins": [
"add-module-exports",
"lodash"
]
}
tsconfig.json:
{
"compilerOptions": {
"target": "es2015",
"module": "commonjs"
}
}
webpack.config.js:
entry: {
'myfile.ts'
},
output: {
filename: 'myfile.js',
library: 'MyApp',
libraryTarget: 'umd'
},
resolve: {
extensions: ['', '.ts', '.js']
},
module: {
loaders: [{
test: /\.ts$/, loader: 'babel!ts-loader'
}]
}
myfile.tsはただクラスをエクスポートします。
export default class MyApp {...