快速开始
安装
安装完成后,你可以在项目中使用 lecp 命令或通过配置文件进行构建。
Tip
lecp 需要在 node@20.19.0+ 环境下运行, 支持 require(esm)
tsconfig.json
typescript 几乎是 npm 包的标配。自动生成 dts 文件是必不可少的。
我们需要配置 面向 esm + bundler 友好的 tsconfig.json。
LECP 使用 SWC 生成 js,为了获得最佳性能和兼容性,建议使用以上配置。
tsconfig 配置说明
模块系统配置:
"module": "Preserve": 保留原始模块语法,让构建工具处理模块转换"verbatimModuleSyntax": true: 确保类型导入/导出语法的准确性"allowImportingTsExtensions": true: 允许导入.ts扩展名文件
严格模式配置:
"strict": true: 启用所有严格类型检查"noUncheckedSideEffectImports": true: 检查副作用导入
性能优化:
"skipLibCheck": true: 跳过库文件类型检查以提升性能"isolatedDeclarations": true: (可选) 启用独立声明模式
声明文件配置:
"noEmit": true: TypeScript 不生成文件,由 LECP 处理"declaration": true: 生成.d.ts文件"declarationMap": true: 生成声明文件映射,便于调试。
💡 注意: 这些配置遵循 SWC 迁移指南 的要求,确保与 SWC 编译器的兼容性。
Node 包
对于 Node 平台包(如 SDK、工具库等),推荐以下配置
创建配置文件
在项目根目录创建 lecp.config.ts 文件:
输出结构
- package.json 的 type: "module"
- package.json 的 type: "commonjs"
package.json
建议在 package.json 中添加 exports 和 files 字段:
type: "module"
type: "commonjs"
Tip
exports无需设置types值 ,typescript 会自动根据 import 和 require 的值推断types的值。- 没有设置
main/module/types字段, 因为这些字段已经被exports字段取代, 基本无需考虑该兼容性。 - 需要暴露子路径,可以继续添加
exports字段,例如:
Web 包配置
对于 Web 平台包(如 React 组件库等),推荐以下配置:
创建配置文件
在项目根目录创建 lecp.config.ts 文件:
Tip
面向浏览器的包,在今天已经无需设置 cjs 格式。
输出结构
package.json
建议在 package.json 中添加 exports 和 files 字段:
构建
设置完 lecp.config.ts 文件后,可以使用以下命令进行构建。
常用命令
package.json
建议在 package.json 中添加以下脚本:
Tip
开发模式下,lecp 支持 lecp.config.ts 变动后自动重启