如何为你的 js 项目添加 ts 支持?
前一段时间为公司内的一个 JS 公共库,增加了一些 TypeScript 类型支持。在这里简答记录一下。
安装 TypeScript 依赖
首先安装 TypeScript 依赖,我们要通过 tsc
指令创建声明文件:
pnpm install -D typescript
创建配置文件
接下来创建 TypeScript 配置文件:
npx tsc --init
这一步会在项目的根目录下创建一个 tsconfig.json
文件。我们在原来配置的基础上开放一些配置:
{
"compilerOptions": {
"target": "es2016",
"module": "commonjs",
"esModuleInterop": true,
"forceConsistentCasingInFileNames": true,
"strict": true,
"noImplicitAny": false,
"skipLibCheck": true,
+ "allowJs": true,
+ "checkJs": true,
+ "declaration": true,
+ "emitDeclarationOnly": true,
+ "rootDir": "./",
+ "outDir": "./types",
}
+ "include": [
+ "security/**/*"
+ ]
}
字段说明
对上述字段,我们挑几个重要的说明一下。
allowJs
、checkJs
增加 JS 文件支持declaration
、emitDeclarationOnly
我们只需要 tsc 帮我们生成类型声明文件即可rootDir
、outDir
指定了类型声明文件生成到types/
目录include
我们只为security/
目录下的代码生成类型声明文件
想详细了解每个配置字段的含义,可以参考 TypeScript 官方说明:https://aka.ms/tsconfig。
生成类型文件
项目根目录下创建 index.d.ts 文件
export let security: typeof import("./types/security");
接下里修改 package.json
, 增加当前 npm 包的类型声明支持和构建脚本 typecheck
:
{
"scripts": {
// ...
"typecheck": "tsc",
},
types: "index.d.ts"
}
接下来执行脚本:
npm run typecheck
最后就能看到在 types/
目录下为 security/
生成的类型声明文件了。
本文由mdnice多平台发布
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具