2016-07-09 4 views
0

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 {... 

答えて

0

バンドル出力をglobal variableに変換できます。現在、libraryTargetをサポートするUMDを指しますCommonjsAMD

関連する問題