如何改进或调试Typescript ts节点编译时?
我把代码库换成了typescript。数百个文件中大约有10万行代码 在我使用ESLint--fix--cache的启动时间为2秒之前。现在使用Typescript(ts节点)是25秒(只有20秒是Typescript) 该项目是后端只如何改进或调试Typescript ts节点编译时?,typescript,Typescript,我把代码库换成了typescript。数百个文件中大约有10万行代码 在我使用ESLint--fix--cache的启动时间为2秒之前。现在使用Typescript(ts节点)是25秒(只有20秒是Typescript) 该项目是后端只 25秒是一种无法接受的速度。这正常吗?我试图删除所有我能找到的动态需求,但仍然没有帮助。可能是某个大文件占用的时间太长?我怎么知道花了这么长时间呢?您不必使用ts节点运行生产构建,它只需动态传输您的代码。您只需检查它,运行ts节点并粘贴一些代码,然后尝试查看运行
25秒是一种无法接受的速度。这正常吗?我试图删除所有我能找到的动态需求,但仍然没有帮助。可能是某个大文件占用的时间太长?我怎么知道花了这么长时间呢?您不必使用ts节点运行生产构建,它只需动态传输您的代码。您只需检查它,运行ts节点并粘贴一些代码,然后尝试查看运行时代码的源代码。编译级别和其他配置在tsconfig文件中也很重要
> const a = (a: string) => a + 'hello';
undefined
> a.toString()
"function (a) { return a + 'hello'; }"
因此,当您运行项目时:
- 打字检查你的每个文件
- 传送你的每个文件
- 解释这样的文件
- 然后只运行您的代码
因为这是一个解释过程,所以您的时间会一直持续到(require->typecheck->transfile->run->repeat),直到所有代码都被执行为止。由于您的代码库是级联的,因此我遇到了类型检查的性能问题,因此如何提高或调试编译速度?我的目标是减少25秒的启动时间。如果您希望通过设置include、exclude、,outDir您可以使用tsconfig.json文件,并像任何其他js项目一样简单地运行它。您还可以使用增量标志来提高编译性能,或者使用--transfile-only标志到ts节点以在不进行类型检查的情况下进行传输查看对话,这可能会有所帮助。您是否设法解决了此问题?在我们的项目中,它也需要25秒。我已经尝试了
transpileOnly
&incremental
标志,但没有多大帮助。