2016-04-20 3 views
2

Возможно ли использовать TypeScript и Webpack для целевого ES5, но для написания модулей в стиле ES6?Модули TypeScript, Webpack, ES6, но предназначенные для ES5

Я хочу написать модули, как это:

export class MyClass { 
} 

И импортировать их так:

import {MyClass} from "Path/To/MyClass"; 

Это прекрасно работает с SystemJS и TSconfig как это:

"compilerOptions": { 
    "target": "es5", 
    "module": "system", 
} 

Но я бы хотел использовать Webpack вместо SystemJS.

С помощью «системы» в качестве настройки модуля я понимаю, что «система не определена» как консольная ошибка.

Я новичок в webpack, но, возможно, есть какая-то комбинация ts-loader и babel-loader, которую я могу использовать? Я просто не могу найти нужную конфигурацию.

ответ

2

Да, вы можете. В версии 1 Webpack (которая является текущей) система не поддерживается. Вы должны настроить таргетинг модуля на обычные:

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

Версия 2 веб-пакета будет поддерживать системные модули.

+0

Спасибо! Но когда у меня есть commonjs, установленный в tsconfig, служба/компилятор языка VSCode/TypeScript/независимо от того, что он вызывает, и говорит, что он «не может найти модуль» – user888734

+0

Так что, вероятно, проблема с вашим кодом. Можете ли вы опубликовать пример того, как вы объявляете/потребляете свои модули? – vintem

+0

Ваш ответ по моему другому вопросу был такой же проблемой: http://stackoverflow.com/questions/36751019/webpack-export-const – user888734

Смежные вопросы