簡(jiǎn)介
tsx 代表 “TypeScript execute”,由 TypeScript 編寫(xiě),內(nèi)部使用由 Go 語(yǔ)言編寫(xiě)的 esbuild 核心二進(jìn)制實(shí)現(xiàn)超快的 TypeScript 編譯,旨在增強(qiáng) Node.js 以無(wú)縫運(yùn)行 TypeScript / ESM / CJS module 編寫(xiě)的腳本文件,成為 node
命令的直接替代品。
首次用戶(hù)
-
使用
x env use tsx
即可自動(dòng)下載并使用- 在終端運(yùn)行
eval "$(curl https://get.x-cmd.com)"
即可完成 x 命令安裝, 詳情參考 x-cmd 官網(wǎng)
- 在終端運(yùn)行
-
x-cmd 提供1分鐘教程,其中包含了 tsx 命令常用功能的 demo 示例,可以幫你快速上手 tsx 。
-
使用案例:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-813843.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-813843.html
# 安裝 tsx x env use tsx # tsx 兼容 node 命令,支持 TS 和 JSX 開(kāi)箱即用 tsx hello.js tsx hello.tx
功能特點(diǎn)
-
開(kāi)箱即用:無(wú)需額外操作或是額外配置如
tsconfig
等配置文件,即可直接運(yùn)行 TypeScript 腳本文件。此外 tsx 可以通過(guò)檢測(cè)模塊的加載方式來(lái)確定如何編譯腳本文件,以支持 ESM 或是 CJS 規(guī)范的腳本文件。 - 運(yùn)行快速:tsx 的核心由 esbuild 提供支持,實(shí)現(xiàn)對(duì) TypeScript 超快編譯,同時(shí) esbuild 不會(huì)進(jìn)行類(lèi)型檢查,所以使用 tsx 運(yùn)行 ts 腳本文件都有明顯的運(yùn)行優(yōu)勢(shì)。
-
兼容
node
命令:tsx 是 Node.js 的封裝調(diào)用,所以是支持所有 Node.js 命令行參數(shù)以及選項(xiàng),此外還提供 Watch 模式,幫助用戶(hù)更便捷調(diào)試開(kāi)發(fā)腳本。
競(jìng)品和相關(guān)作品
- ts-node:ts-node 也同樣是在 Node.js 上運(yùn)行 TypeScript 的命令行的工具,運(yùn)行時(shí)會(huì)對(duì)文件進(jìn)行類(lèi)型檢查,對(duì)于需要在嚴(yán)格模式下運(yùn)行的腳本文件,ts-node 是更好的選擇。
- bun:bun 由 Jarred Sumner 在 2021年使用 Zig 開(kāi)發(fā)。但不同于 node 和 deno 基于 Chrome 項(xiàng)目的 V8引擎,bun 使用 JavaScriptCore 引擎。同時(shí) bun 提供開(kāi)箱即用運(yùn)行 TypeScript 腳本文件,x-cmd 也引入了 bun,有興趣的讀者可以參考 x-cmd pkg bun。
- deno 是一個(gè)由 Node 原作者采用 Rust 開(kāi)發(fā),同樣也是開(kāi)箱即可運(yùn)行 Typescript,以推廣更嚴(yán)謹(jǐn)更安全的代碼。x-cmd 也引入了 deno,有興趣的讀者可以參考 x-cmd pkg deno。
進(jìn)一步探索
- tsx - GitHub
到了這里,關(guān)于x-cmd pkg | tsx - Node.js 的直接替代品的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!