美文网首页
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