跳到内容

TypeScript

zx 是用 TypeScript 编写的,并提供了相应的 libdefs。类型定义与 TS 4+ 兼容。

ts
// script.ts
import { $ } from 'zx'

const list = await $`ls -la`

一些运行时,例如 BunDeno,具有内置的 TS 支持。 Node.js 需要额外的设置。根据 ES 模块契约配置您的项目

使用 TypeScript 编译器是最直接的方法,但是运行时对原生 TS 的支持正在逐渐增加。

bash
# Since Node.js v22.6.0
node --experimental-strip-types script.js
bash
# Since Node.js v22.6.0
NODE_OPTIONS="--experimental-strip-types" zx script.js
bash
npm install typescript

tsc script.ts

node script.js
bash
npm install ts-node

ts-node script.ts
# or via node loader
node --loader ts-node/esm script.ts
bash
npm install swc-node

swc-node script.ts
bash
npm install tsx

tsx script.ts
# or
node --import=tsx script.ts
bash
bun script.ts
bash
deno run --allow-read --allow-sys --allow-env --allow-run script.ts

免责声明:这不是 Google 官方支持的产品。