2016-02-15 2 views
1

Если я компилирую Машинопись для Node.js сCompile Машинопись для Node.js со всеми функциями

tsc --module commonjs --target ES5 

Я не могу использовать async/await или генераторы, так как tsc не знает, как компилировать его ES5 ,

Это может быть исправлено, если я компилирую Машинопись для Node.js с

tsc --module commonjs --target ES6 

, но тогда я не могу использовать параметры по умолчанию или деструктурирующее назначение, потому что Node.js их не поддерживает. tsc знает, как скомпилировать их для ES5, но это только делает, если вы на самом деле нацеливаете ES5.

Как настроить таргетинг на Node.js с поддержкой всех функций TypeScript?

+1

Вы можете настроить таргетинг на ES6, а затем использовать babeljs для компиляции для ES5. – jfriend00

+0

Да, это сработает, но это усложняет ситуацию. Я надеялся, что 'tsc' был единственным инструментом сборки, который мне нужен. Я имею в виду, что внутри он делает все, что ему нужно, чтобы настроить сочетание функций Node.js, но, похоже, для него нет выбора. :( – Jesse

+0

Не ответ, но я также хотел бы взглянуть на конкретизацию конвейера. Настройка gulpfile заняла у меня все 20 минут и делает то, что мне нужно (tsc-> browserify -> header). Я думал, что это будет раздражать , оказывается, все в порядке. – Paarth

ответ

0

Все должно быть в порядке с использованием скомпилированного кода ES6 в последних узлах node.js (v5.x). Чтобы включить конкретный ES6 featurest, который не включен по умолчанию, вы должны использовать флаги --harmony. Как это, например:

узел --harmony-

уничтожение того

Для полного списка возможных гармонии особенности играть - бега:

узла --v8-опции | grep harmony

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