Vue王炸打包工具新作品 Tsdown上线

182 阅读1分钟

image.png Tsdown‌是一个由TypeScript编写的开源项目,旨在提供一个快速的打包工具,用于将TypeScript代码打包成JavaScript。Tsdown基于Rolldown构建,利用其高性能特性,提供快速的构建速度和强大的生态系统支持

Tsdown的主要特点和功能

  1. 高性能‌:Tsdown基于Rolldown,后者使用Rust开发,官方声称比Rollup快10-30倍,适合大型项目的快速打包‌
  2. 兼容性‌强:支持Rollup、Vite等插件,开发者可以直接使用现有的插件,无需重新开发‌
  3. 开箱即用:‌TypeScript优化‌,支持CommonJS和ES Module格式,通过unplugin-isolated-decl(基于Oxc)快速生成.d.ts类型文件‌
  4. 高效管理:高效管理外部依赖和同级依赖,保持输出包体积精简‌
  5. 迁移方便:兼容tsup的命令行参数和功能,支持复用Vite/Vitest配置文件,确保平滑迁移‌

使用

安装

确保我们node版本为 14.17‌ ++

// 开启终端,输入命令,我们即可将其搬至项目当中
npm install tsdown

配置项

根目录下新建文件 tsdown.config.ts

import { defineConfig } from'tsdown';

exportdefault defineConfig({
  entry: ['./src'], // 告诉 Tsdown 从哪个文件夹开始打包
  outDir: './dist', // 打包后的文件放哪
  format: ['es', 'cjs'], // 输出格式,ES 模块和 CommonJS 都要
});

运行

所有配置均已做好,只需最后一步

npx tsdown

可选(迁移内容)

// 如果之前是运用的tsup,那么可以一键迁移到Tsdown
npx tsdown migrate

官方

Tsdown 官方文档

Tsdown Github 地址