You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何快速运行TypeScript文件?解决tsx/ts-node工具报错问题

快速运行CCXT TypeScript程序的优化方案

方案1:预编译成JS再运行(最稳最快)

直接把TS代码编译成原生JS,彻底消除即时编译的性能损耗,速度和JS版本完全一致:

  • 先确认tsconfig.json里配置了"outDir": "./dist"(指定编译输出目录)
  • 执行编译命令:tsc
  • 运行编译后的文件:node ./dist/examples/ts/cli.ts bitget fetchBalance

方案2:搞定tsx的模块缺失问题

你遇到的ERR_MODULE_NOT_FOUND大概率是依赖没装全,别只单独装jsbn:

  • 先跑npm install重新装一遍所有依赖
  • 检查tsconfig.json的moduleResolution设为"node16"或"nodenext",适配ES模块解析规则
  • 再用tsx运行:tsx ./examples/ts/cli.ts bitget fetchBalance

方案3:修复ts-node的文件扩展名错误

保留package.json里的"type": "module",调整TS配置适配ES模块:

  • 在tsconfig.json的compilerOptions里加"module": "ESNext"和"moduleResolution": "node16"
  • 运行时指定loader:node --loader ts-node/esm ./examples/ts/cli.ts bitget fetchBalance
  • 注意:ES模块模式下,所有导入语句必须写全文件扩展名(比如.ts或.js),不能省略

方案4:解决ts-node-esm的DOM类型报错

Node环境没有DOM全局变量,所以TS找不到DOMException和self,补一下类型就行:

  • 安装Node类型定义:npm install -D @types/node
  • 在tsconfig.json的compilerOptions里加"types": ["node"]
  • 如果还报错,在代码顶部加全局声明:
    declare global {
      const self: typeof globalThis;
      type DOMException = Error;
    }
    
  • 再执行ts-node-esm ./examples/ts/cli.ts bitget fetchBalance

内容的提问来源于stack exchange,提问作者Sam Germain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 00:30:57