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. 使用案例:

    tsx-1min-cn

    # 安装 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/344667.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DFT中的SCAN、BIST、ATPG基本概念

DFT中的SCAN、BIST、ATPG基本概念 SCAN 定义 扫描路径法是一种针对时序电路芯片的DFT方案,目标是在不影响正常功能的情况下来能够提高可控性和可观测性。 原理 原理是将时序电路可以模型化为一个组合电路网络和带触发器(Flip-Flop,简称FF)的时序电路…

蓝桥杯练习题(七)

📑前言 本文主要是【算法】——蓝桥杯练习题(七)的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 …

【漏洞复现】Office365-Indexs-任意文件读取

漏洞描述 Office 365 Indexs接口存在一个任意文件读取漏洞,攻击者可以通过构造精心设计的请求,成功利用漏洞读取服务器上的任意文件,包括敏感系统文件和应用程序配置文件等。通过利用此漏洞,攻击者可能获得系统内的敏感信息,导致潜在的信息泄露风险 免责声明 技术文章…

uniapp 如何使用echarts 以及解决tooltip自定义不生效问题

使用的是echarts-for-wx插件&#xff1b; 正常写法案例&#xff1a;给tooltip数值加个% <template><view><uni-ec-canvas class"uni-ec-canvas"id"uni-ec-canvas"ref"canvas"canvas-id"uni-ec-canvas":ec"ec&quo…

【Git】的工作流程简介

目录 Git的工作区域Git的基本流程 1.将工作区的代码添加到暂存区2.将暂存区的文件提交到本地仓库3.将暂存区的文件提交到远程仓库 Git的工作区域 Git的基本流程 图形化方式操作 命令行模式&#xff08;Linux系统常用&#xff09;操作 1.将工作区的代码添加到暂存区 查看文件状…

SQL语句详解二-DDL(数据定义语言)

文章目录 操作数据库创建&#xff1a;Create查询&#xff1a;Retrieve修改&#xff1a;Update删除&#xff1a;Delete使用数据库 操作表常见的几种数据类型创建&#xff1a;Create复制表 查询&#xff1a;Retrieve修改&#xff1a;Update删除&#xff1a;Delete 操作数据库 创…

C#进阶-IIS服务器发布ASP.NET项目

对于云服务器&#xff0c;程序员一般不会陌生&#xff0c;如果项目需要发布到现网&#xff0c;那么服务器是必不可缺的一项硬性条件&#xff0c;那么如何在云服务器上部署一个项目&#xff0c;需要做哪些配置准备&#xff0c;下面就由本文档为大家讲解&#xff0c;本篇以 IIS服…

UCB Data100:数据科学的原理和技巧:第十六章到第十八章

十六、交叉验证和正则化 Cross Validation and Regularization 译者&#xff1a;飞龙 协议&#xff1a;CC BY-NC-SA 4.0 学习成果 认识到需要验证和测试集来预览模型在未知数据上的表现 应用交叉验证来选择模型超参数 了解 L1 和 L2 正则化的概念基础 在特征工程讲座结束时…

Qt中QGraphicsView架构下实时鼠标绘制图形

上一章节介绍了关于QGraphicsView的基础讲解&#xff0c;以及简单的类图创建&#xff0c;由上一章节中最后展示的动画效果来看&#xff0c;今年主要讲述如何在QGraphicsView架构下&#xff0c;实时拖动鼠标绘制图形&#xff01; 今天主要以矩形为例&#xff0c;再来看一下展示…

微信公众号生成带参数的二维码加上logo

上次&#xff0c;记录的《用php生成微信公众号带参数的二维码demo》 这次&#xff0c;加上logo显得正规一点&#xff0c;起码看起来不像诈骗二维码 接上&#xff0c;上次的公众号二维码&#xff08;远程二维码地址&#xff09; // $wx_code ‘https://mp.weixin.qq.com/cgi-b…

数据结构——二叉树(先序、中序、后序及层次四种遍历(C语言版))超详细~ (✧∇✧) Q_Q

目录 ​​​​​​​ 二叉树的定义&#xff1a; *特殊的二叉树&#xff1a; 二叉树的性质&#xff1a; 二叉树的声明&#xff1a; 二叉树的先序遍历&#xff1a; 二叉树的中序遍历&#xff1a; 二叉树的后序遍历&#xff1a; 二叉树的层序遍历&#xff1a; 二叉树的节…

HTTP数据请求

文章目录 1 概述2 什么是HTTP3 如何发起HTTP请求4 参考链接 1 概述 日常生活中我们使用应用程序看新闻、发送消息等&#xff0c;都需要连接到互联网&#xff0c;从服务端获取数据。例如&#xff0c;新闻应用可以从新闻服务器中获取最新的热点新闻&#xff0c;从而给用户打造更…