美文网首页
typescript 基本语法详解

typescript 基本语法详解

作者: 有一个程序媛 | 来源:发表于2022-12-01 10:20 被阅读0次

1、.d.ts是干嘛的

.d.ts文件是ts用来声明变量,模块,type,interface等等,声明变量之后,在其他地方可以不用import导入这些东西就可以直接使用,并且有语法提示。有一个重要前提tsconfig.json文件里的include需要添加这些文件路径,不需要是绝对路径,匹配这个文件所在的文件夹或者祖宗级别的文件夹,可以通过glob通配符。
glob通配符:
*匹配0或者多个字符(不包括目录分隔)
匹配一个任意字符(不包括目录分隔)
**/递归匹配任意子目录

2、declare是干嘛的

.d.ts文件中的顶级声明必须以“declare”或“export”修饰符开头
通过“declare”声明的类型或者变量或者模块,在include包含的文件范围内,都可以直接引用而不用去import或者import type相应的变量或者类型。
(1)declare声明一个类型

declare type Admin {
  name: string;
}

在include包含的文件范围内可以直接使用Admin这个type。
(2)declare声明一个模块

declare module '*.css';
declare module '*.less';
declare module '*.png';

在编辑ts文件时,如果你想导入一个.css/.less/.png格式的文件,如果没有经过declare的话是会提示语法错误的。
(3)declare声明一个变量
假如使用了一个sdk,这个sdk中有一些全局对象,比如微信的sdk有wx,但是不经过任何的声明在ts文件里面直接用wx.config()的话肯定会报错。
总结一句话:declare就是告诉ts编译器你担保这些变量和模块存在并声明了相应的变量,编译的时候不需要提示语法错误。
(4)declare声明一个作用域

declare namespace API {
  interface ResponseList {}
}

声明完之后在其他地方的ts就可以直接API.ResponseList引用到这个接口类型。

3、注意

(1).d.ts文件顶级声明declare最好不要跟export同级使用,不然其他ts文件引用该文件的内容时就需要手动import导入
(2)在.d.ts文件里如果顶级声明不用export的话,declare和直接写type、interface效果是一样的,其他地方可以直接引用。

declare type Add = {
  a: string;
}
type Bdd = {
  b: string;
}

可以直接使用Add和Bdd作为某个变量的类型

相关文章

网友评论

      本文标题:typescript 基本语法详解

      本文链接:https://www.haomeiwen.com/subject/xfhnbrtx.html