tsrs 常见问题
tsrs 是一款仅在浏览器中运行的 TypeScript 类型显微镜。这些回答涵盖它能做什么、如何处理你的代码,以及如何阅读它的各种视图。
关于 tsrs
tsrs 会展开 TypeScript 和编辑器常常折叠成省略号的已解析类型。它把可赋值性失败转换为结构化 diff,用 Rust/WASM 引擎对照 TypeScript 基线测量类型检查开销,并评估 npm 包的声明开销。一切都在浏览器中运行:无需账户、不上传代码,也没有服务器端编译器。
tsrs 是什么?
tsrs 是一款仅在浏览器中运行的 TypeScript 类型显微镜。它会展开编辑器用省略号折叠的已解析类型,把可赋值性错误转换为结构化 diff,并用 Rust/WASM 引擎和 TypeScript 基线测量类型检查开销。
在 Arena 里可以检查什么?
Arena 会显示 Type X-Ray 类型树、针对结构化可赋值性失败的 Error Diff、完整诊断列表,以及每个泛型的 Cost Lens 测量结果。四个预设覆盖深层错误、zod 与 tRPC 类型、递归类型和一个压力测试用例。
tsrs 会上传我的代码吗?
不会。编译在你的浏览器内的 Web Worker 中运行。分享链接把压缩后的复现内容保存在 URL fragment 中,该部分永远不会发送到服务器。不会存入账户或数据库。
npm 类型报告如何工作?
报告会在你的浏览器中从 jsdelivr 获取包的公开 TypeScript 声明,然后在本地测量声明体积、导出符号和类型检查开销。结果缓存在浏览器的 Cache API 中。
tsrs 会取代 tsc 或我的 IDE 吗?
不会。类型检查器就是原版 TypeScript。tsrs 为同样的信息提供另一种视图:已解析类型、结构化错误 diff 和开销测量。日常开发中请继续在 CI 和编辑器里使用 tsc。
为什么 Arena 和 npm 页面需要 COOP/COEP?
tsrs 会发送 Cross-Origin-Opener-Policy 和 Cross-Origin-Embedder-Policy 响应头,使页面处于跨源隔离状态。这种隔离启用了速度计所需的高分辨率计时器,并让 WebAssembly worker 保持可预测。
界面支持哪些语言?
界面提供英语、简体中文、日语和韩语,选择会保存在本地。启用 JavaScript 后,可使用页头的语言菜单在原位切换本文;URL 始终为 /faq。
tsrs 免费且开源吗?
是的。tsrs 完全在你的浏览器中运行,无需账户,也没有付费版本。源代码、设计说明和发布历史都可在 GitHub 上的 oxc-project/tsrs 仓库中查看。