TypeScript中类型声明文件

本文介绍了TypeScript中的类型声明文件,包括.d.ts文件的作用和使用。讲解了如何利用现有类型声明文件,如从DefinitelyTyped仓库获取,以及如何创建自定义的类型声明文件,特别是为JavaScript库添加类型支持。还提到了declare关键字的使用,用于为已存在的变量声明类型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

类型声明文件 以d.ts结尾

在axiosDemo中的mode_moudules中就有index.d.ts文件

TS中的两种文件类型

1. .ts文件
  • 即包含类型文件又可执行代码
  • 可以编译为.js文件,再执行代码
  • 是编写程序代码的地方
2. .d.ts文件 (DefinitelyTyped)
  • 只包含类型信息的类型声明文件
  • 不会生成.js文件,仅用于提供类型信息
  • 为js提供类型信息

总结: .ts是implementation(代码实现文件); .d.ts是declaration(类型声明文件)

使用类型声明文件

  1. 先使用现有的类型声明文件
  2. 再创建自己的类型声明文件

就是先学会别人的使用方式,再自己创建使用

现有的类型声明文件

在axiosDemo中的mode_moudules中就有index.d.ts文件

如何使用

在项目的根目录中会有一个package.json文件
里面有一些配置项,其中types|typeing就是用来配置类型声明文件的

由DefinitelyTyped提供
  • DefinitelyTyped是一个github仓库,用来提供高质量的ts类型声明文件
  • 可以npm | yarn 下载ts类型声明包 这些包的名称格式为:@types/*
  • 比如@type/react 等
  • 当安装了类型声明包以后,ts会自动加载该类声明包,以提供该库的类型声明
自己的类型声明文件
  1. 创建index.d.ts类型声明文件
  2. 创建需要共享的类型,使用export导出
  3. 在需要使用共享类型的.ts文件中,import导入即可(.d.ts导入后缀必须省略)

注意:.d.ts文件名称不要和.ts的重名

为已有js文件提供类型声明
  1. js项目迁移到ts项目,让已有的js文件有类型声明
  2. 成为库作者,创建库给其他人使用

注:类型声明文件的编写与模块化方式相关,不同的模块化方式有不同的写法

  • TS项目中也可以使用.js文件
  • 在导入.js文件时,TS会自动加载与.js同名的.d.ts文件,以提供类型声明
declare关键字
  • 用于类型声明,为其他地方(.js文件)已存在的变量声明类型,恶如不是创建一个新的变量
  1. 对于type、interface等这些明确就是TS类型的(只能在TS中使用的),可以省略declare
  2. 对于let、function等具有双重含义(在JS、TS中都能用),应该使用declare关键字,明确指定这里是用于类型声明
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值