x-cmd pkg | tsx - Node.js 的直接替代品

目录

    • 简介
    • 首次用户
    • 功能特点
    • 竞品和相关作品
    • 进一步探索

简介

tsx 代表 “TypeScript execute”,由 TypeScript 编写,内部使用由 Go 语言编写的 esbuild 核心二进制实现超快的 TypeScript 编译,旨在增强 Node.js 以无缝运行 TypeScript / ESM / CJS module 编写的脚本文件,成为 node 命令的直接替代品。

首次用户

  1. 使用 x env use tsx 即可自动下载并使用

    • 在终端运行 eval "$(curl https://get.x-cmd.com)" 即可完成 x 命令安装, 详情参考 x-cmd 官网
  2. x-cmd 提供1分钟教程,其中包含了 tsx 命令常用功能的 demo 示例,可以帮你快速上手 tsx 。

  3. 使用案例:

    x-cmd pkg | tsx - Node.js 的直接替代品_第1张图片

    # 安装 tsx
    x env use tsx
    
    # tsx 兼容 node 命令,支持 TS 和 JSX 开箱即用
    tsx hello.js
    tsx hello.tx
    

功能特点

  1. 开箱即用:无需额外操作或是额外配置如 tsconfig 等配置文件,即可直接运行 TypeScript 脚本文件。此外 tsx 可以通过检测模块的加载方式来确定如何编译脚本文件,以支持 ESM 或是 CJS 规范的脚本文件。
  2. 运行快速:tsx 的核心由 esbuild 提供支持,实现对 TypeScript 超快编译,同时 esbuild 不会进行类型检查,所以使用 tsx 运行 ts 脚本文件都有明显的运行优势。
  3. 兼容 node 命令:tsx 是 Node.js 的封装调用,所以是支持所有 Node.js 命令行参数以及选项,此外还提供 Watch 模式,帮助用户更便捷调试开发脚本。

竞品和相关作品

  1. ts-node:ts-node 也同样是在 Node.js 上运行 TypeScript 的命令行的工具,运行时会对文件进行类型检查,对于需要在严格模式下运行的脚本文件,ts-node 是更好的选择。
  2. bun:bun 由 Jarred Sumner 在 2021年使用 Zig 开发。但不同于 node 和 deno 基于 Chrome 项目的 V8引擎,bun 使用 JavaScriptCore 引擎。同时 bun 提供开箱即用运行 TypeScript 脚本文件,x-cmd 也引入了 bun,有兴趣的读者可以参考 x-cmd pkg bun。
  3. deno 是一个由 Node 原作者采用 Rust 开发,同样也是开箱即可运行 Typescript,以推广更严谨更安全的代码。x-cmd 也引入了 deno,有兴趣的读者可以参考 x-cmd pkg deno。

进一步探索

  • tsx - GitHub

你可能感兴趣的:(node.js,ubuntu,linux,tsx)