zoukankan      html  css  js  c++  java
  • TypeScript声明文件(.d.ts)的使用

    前言

    当我们在TS文件中需要引入外部库时,编译时是无法判断传入参数的类型的,所以我们需要在引入前加入一个声明文件来帮助ts判断类型。
    当然现在大部分库都自带有自己的声明文件,一般在@types目录下。

    使用场景

    1. 在ts文件中对引用的外部库做类型判断;
    2. 制作npm包时,书写自己的声明文件,需要在package.json的typing/types字段注册声明文件的路径;
    3. 不使用ts时,也可以添加声明文件与(自己的)的模块存放在同一目录下,简单做一下数据结构体,对IDE参数声明也有用哦;

    引用声明文件的几种方法

    1. 与调用的ts文件放在同一目录下;
    2. 在声明文件tsconfig.json的include/files字段下添加声明文件的路径;

    实例

    • 以外部库fs为例(假设fs没有自己的声明文件)

    • fs.d.ts

    declare module 'fs' {
        function readFileSync(path: string | number, options?: { encoding?: string; flag?: string; } | null): string;
    }
    
    • MyTest.ts
    import * as fs from 'fs'
    
    const body = fs.readFileSync('../@types/fs.d.ts', {encoding: 'utf8'});
    console.log(body);
    

    总结

    1. 声明文件一般只能声明外部引入的npm包;
    2. 声明文件一定要用declare module 'fs'显式的声明自己的外部库名称;
  • 相关阅读:
    练习5
    图例设置了却不显示
    easyui中多级表头,主表头不能添加field字段,否则不居中
    springboot热部署
    ReactDom.render调用后没有渲染
    webpack打包配置模板
    overridePendingTransition
    multiDex分包时指定主dex的class列表
    android实现手势锁
    动态补丁构建工具nuwa中的“坑”
  • 原文地址:https://www.cnblogs.com/xpengp/p/12787239.html
Copyright © 2011-2022 走看看