Попытка передать файлы JavaScript или TypeScript для использования в среде Node. - PullRequest
0 голосов
/ 03 мая 2018

Наша среда узлов требует, чтобы наши файлы JavaScript были помечены. Это достаточно просто.

Сложность в том, что у нас есть .js, .jsx, .ts, .tsx файлы, и это не изменится.

Могу ли я что-нибудь сделать, чтобы преобразовать файлы TypeScript в JavaScript, а затем заставить все файлы .js/.jsx пройти через babel?

Моя текущая команда:

nodemon app.js --exec babel-node --presets env,stage-2,react

Я знаю, что мне нужно преобразовать TypeScript где-то там.

Есть идеи?

Версия узла: 8.11.1

1 Ответ

0 голосов
/ 04 мая 2018

С babel 7 вы можете использовать пресет машинопись . Вам все еще нужна машинопись, чтобы выполнить фактическую проверку типов, просто babel будет выполнять компиляцию в js.

Вот как может выглядеть простая установка:

  1. npm install --save-dev @babel/preset-typescript

Обновите и остальную часть набора инструментов до babel 7 (например, babel-cli до @babel/cli @babel/core, babel-preset-env до @babel/preset-env и т. Д.)

  1. Добавьте "noEmit": true к вашему tsconfig.json. Это гарантирует, что машинопись только проверяет тип и не выводит js.

  2. Добавьте --extensions '.js,.jsx,.ts,.tsx' к вашей команде.

Итак, ваша команда становится:

nodemon app.js --exec babel-node --presets @babel/env,@babel/stage-2,@babel/react,@babel/typescript --extensions '.js,.jsx,.ts,.tsx'
...