对 ts-node 的启动加速

2022-06-07  本文已影响0人  心情后花园

在新项目中,使用了 TypeScript 进行开发,但是在启动过程中比较缓慢,所以就去 stackoverflow 上搜索了对应的优化方式,在回答中,比较高赞的回答是使用 TS_NODE_TRANSPILE_ONLY 参数去进行优化。然后去官网上找对应参数的文档去了解过程中,知道了还有另外一个方式去优化,效率也更高。

这个效率只是凭自己感官上的计数,去体验的。未优化前,启动时间大概是 18s

1. 参数 transpileOnly

添加该命令之后,启动时间缩减到了 7s 左右

1.1 命令行

# 1.
TS_NODE_TRANSPILE_ONLY=true ts-node src/app.ts
# 2.
ts-node -T src/app.ts
# 3. ts-node 版本需大于 10.5.x,不然报错,找不到该选项
# Unknown or unexpected option: --transpileOnly
ts-node --transpileOnly src/app.ts

1.2 tsconfig.json

{
    "compilerOptions": {
        ...
    },
    "ts-node": {
        "transpileOnly": true,
    }
}

2. 通过 swc

ts-node 版本不低于 10.5.x,使用后启动时间大致为 2s

2.1 命令行

ts-node --swc src/app.ts

2.2 tsconfig.json

{
    "compilerOptions": {
        ...
    },
    "ts-node": {
        "swc": true,
    }
}

3. 参考链接

  1. StackOverflow回答

  2. ts-node 性能

上一篇 下一篇

猜你喜欢

热点阅读