当前,我们有客户端服务器应用程序(出于竞争性编码目的),其中客户端命中编译并运行,并将ts代码发送到服务器,其中ts代码存储在文件中,并通过服务器上的测试用例在本地运行,并且输出通过测试返回给客户端案例通过/失败结果。 但是运行ts文件的速度非常慢,这花费了很多时间。
我正在使用transpileonly模式下的ts-node在服务器中本地编译和运行文件。
例如npx ts-node -T tsFileName.ts
我们对ts代码的编译和运行时间提出了要求。
答案 0 :(得分:0)
选项A
选项B
尝试玩一些compiler options
一些有趣的: 增量:true,noEmit:true,严格:false,skipLibCheck:true
答案 1 :(得分:0)
我添加了这些环境变量,并且启动时间从几秒变到了几毫秒:
TS_NODE_FILES=true TS_NODE_TRANSPILE_ONLY=true ts-node ./script.ts
考虑仅通过ts-node
安装[sudo] npm install -g typescript ts-node
,然后避免使用npx
来确保每次都安装ts-node
的额外步骤。
答案 2 :(得分:0)
使用nodemon快速编译的一种方法
安装Nodemon:npm i -g nodemon
创建文件nodemon.json
{
"watch": ["src"],
"ext": ".ts,.js",
"ignore": [],
"exec": "ts-node ./src/server.ts"
}
在package.json
"start:dev": "nodemon",
答案 3 :(得分:0)
现在是 2021 年。有人对本土事物感兴趣吗,你可以看看这个:https://swc.rs/
答案 4 :(得分:0)
您可以使用 esbuild-runner
,这似乎要快得多。
npm install -g esbuild-runner
npm install -g esbuild
然后运行代码
esr src/index.ts