2016-07-09 1 views
0

javascript 응용 프로그램을 typescript로 변환했지만 아직 코드를 typescript/es6 스타일로 변환 했으므로 babel/webpack은 변환되지 않았습니다. 올바르게 내보내십시오.Tyabscript/es6 모듈이 기본 속성이있는 _esModule로 내 보냅니다.

이제는 export default... 구문을 사용하기 때문에 babel은 속성에 실제로 연결된 클래스가있는 esModule 개체로 바뀝니다.

당연히이 개체 형식은 더 이상 실제로 사용하는 사람에게 유효하지 않습니다.

나는 babel-plugin-add-module-exports 플러그인을 믹스에 추가하려고했지만 아무 것도 변경하지 않았습니다. 믹스중인 타이프 스크립트가 문제를 일으켰는지 궁금합니다.

는 .babelrc :

{ 
    "plugins": [ 
     "add-module-exports", 
     "lodash" 
    ] 
} 

tsconfig.json :

{ 
    "compilerOptions": { 
    "target": "es2015", 
    "module": "commonjs" 
    } 
} 

webpack.config.js :

export default class MyApp {... 
:

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 그냥 클래스를 수출

답변

0

번들 출력을 global variable으로 변환 할 수 있습니다. 현재 및 AMD

을 지원하는 UMD를 가리키는 libraryTarget 포인트
관련 문제