尝试 babel JavaScript 或 TypeScript 文件以在 Node 环境中使用

Dav*_*vid 1 javascript node.js typescript tsc babeljs

我们的节点环境要求我们的 JavaScript 文件是 babel 的。这很容易。

困难的部分是我们有.js, .jsx, .ts, .tsx文件,这不会改变。

我可以做些什么来将 TypeScript 文件转换为 JavaScript,然后让所有文件.js/.jsx通过 babel 吗?

我当前的命令:

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

我知道我需要在其中的某个地方转换 TypeScript。

有任何想法吗?

节点版本:8.11.1

小智 5

在 babel 7 中,您可以使用typescript 预设。你仍然需要 typescript 来进行实际的类型检查,只是现在由 babel 完成对 js 的编译。

简单的设置可能如下所示:

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

将工具链的其余部分也更新到 babel 7(例如babel-clito @babel/cli @babel/corebabel-preset-envto@babel/preset-env等)

  1. 添加"noEmit": true到您的tsconfig.json. 这保证了 typescript 只做类型检查,不输出 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'
Run Code Online (Sandbox Code Playgroud)