繁体   English   中英

Babel 创建 output 目录但不转译任何文件

[英]Babel creates output directory but doesn't transpile any files

我正在尝试编译一个使用 ES6 语法和 TypeScript 的项目。 我有一个这样的目录结构:

├── .babelrc
├── src
    ├── index.ts
    └── pitching
        ├── pitching.test.ts
        └── pitching.ts

我想将src和 output 中的所有内容编译到dist/中。 我尝试了以下命令的许多变体(在package.json"build"脚本中指定):

babel ./src -d ./dist

但我总是得到以下 output:

$ babel ./src -d ./dist
Successfully compiled 0 files with Babel (13ms).
Done in 0.32s

结果是我的项目根目录中的一个空dist/目录。 我尝试编译到单个文件而不是目录,这确实创建了一个编译文件,但是代码中引用的所有模块路径都被弄乱了,因为它们是相对于src目录的。 我只提到这一点是因为对我来说它表明我的 babel 设置是正确的,尽管我可能也错了。

我的问题是,为什么我的文件没有被转译,或者我该如何排除故障? 该命令没有给我任何有用的 output,即使我将{"debug": true}添加到我的.babelrc的预设中。

作为参考,这里是我正在使用的 babel 包和版本:

"devDependencies": {
    "@babel/cli": "^7.10.3",
    "@babel/core": "^7.10.3",
    "@babel/preset-env": "^7.10.3",
    "@babel/preset-typescript": "^7.10.1",
    "@types/jest": "^26.0.3",
    "jest": "^26.1.0"
}

这是我的.babelrc

{
    "presets": ["@babel/preset-env", "@babel/preset-typescript"]
}

尝试将ts添加到扩展中:

babel --extensions '.ts' ./src -d ./dist

babel/preset-typescript typescript 需要一个额外的参数来按预期进行转换。 请参阅此处的文档。

就我而言,我已经在使用--extensions '.ts'标志,但仍然得到“成功编译 0 个文件”。 我不确定我们的设置之间还有什么不同,但对我来说解决的是这里概述的解决方案。 一旦我删除.ts周围的环绕引号,它就开始工作了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM