typescript - 使用 --noEmit 时使用 TypeScript 进行增量编译?

标签 typescript

我想使用 TypeScript 的 --incremental模式以使其在重复运行时更快。然而我的 tsconfig.json"noEmit": true因为我目前只使用 TypeScript 进行类型检查而不是代码生成。

如果我运行 tsc --incremental --outDir ~/tmp/typescript --noEmit它似乎没有输出 tsconfig.tsbuildinfo文件,因此实际上不会在重复运行时进行增量编译。

我想我实际上可以启用发射并运行 tsc --incremental --outDir ~/tmp/typescript --noEmit false但随后它不仅生成 tsconfig.tsbuildinfo还有一堆我不需要的 JS 文件,这并不理想。

有什么办法可以运行tsc --incremental --noEmit ,其实是增量编译,只生成tsconfig.tsbuildinfo增量编译需要文件吗?

最佳答案

更新:incremental的组合和 noEmit终于可以使用 TS 4.0 .

到目前为止,不幸的是没有办法拥有incremental使用 noEmit 构建选项启用更快的类型检查运行。例如。这将很有用,当有一个单独的 typescript 编译步骤时 @babel/preset-typescript或类似。
开发人员关于您的问题的声明:

The problem here is that incremental is on by default if composite is on, so this is an actual risky change because it's going to mean new build artifacts in unexpected places for people using --noEmit today.

If the build info file path is specified manually, then writing it out does seem OK


所以希望有机会在 future 的版本中实现这样的功能。您可以关注 here用于进度跟踪。

关于typescript - 使用 --noEmit 时使用 TypeScript 进行增量编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57078953/

相关文章:

css - 如何增加 Angular 8 中 mat-dialog-actions 的宽度

reactjs - 如何修复 useHotkeys Hook 的返回值与 div 元素 ref prop 的类型不匹配的 React TypeScript 错误

html - 显示/隐藏多个 Div

php - 如何使用 Angular4 进行 Codeigniter View ?

typescript - 如何在不打开界面的情况下设置索引签名

angular - 如何在 firebase 云函数和 angular 之间共享 typescript 类

arrays - 有没有办法在 TypeScript 中将多种类型的数据放入数组中?

typescript - cucumber 与 typescript 的正确用法?

angular - 捕获异常后不在开发控制台中显示 500 错误

reactjs - 如何让故事书在故事中显示 typescript 类型