声明文件 declare

当使用第三方库时,我们需要引用它的声明文件,才能获得对应的代码补全、接口提示等功能。

declare var 声明全局变量
declare function 声明全局方法
declare class 声明全局类
declare enum 声明全局枚举类型
declare namespace 声明(含有子属性的)全局对象
interface 和 type 声明全局类型
/// <reference /> 三斜线指令

例如我们有一个express 和 axios

发现express 报错了

让我们去下载他的声明文件

npm install @types/node -D

那为什么axios 没有报错

我们可以去node_modules 下面去找axios 的package json

发现axios已经指定了声明文件 所以没有报错可以直接用

通过语法declare 暴露我们声明的axios 对象

declare  const axios: AxiosStatic;

如果有一些第三方包确实没有声明文件我们可以自己去定义

名称.d.ts 创建一个文件去声明

案例手写声明文件

index.ts

import express from 'express'const app = express()const router = express.Router()app.use('/api', router)router.get('/list', (req, res) => {res.json({code: 200})
})app.listen(9001,()=>{console.log(9001)
})

express.d.ts

declare module 'express' {interface Router {get(path: string, cb: (req: any, res: any) => void): void}interface App {use(path: string, router: any): voidlisten(port: number, cb?: () => void): void}interface Express {(): AppRouter(): Router}const express: Expressexport default express
}

关于这些第三发的声明文件包都收录到了 npm

npm js

学习TypeScript19(Mixins混入)_qq1195566313的博客-CSDN博客

学习TypeScript18(声明文件d.ts)相关推荐

  1. php 得到 ts文件,获取TypeScript声明文件.d.ts步骤详解

    这次给大家带来获取TypeScript声明文件.d.ts步骤详解,获取TypeScript声明文件.d.ts的注意事项有哪些,下面就是实战案例,一起来看一下. 一.TypeScript的声明文件就像C ...

  2. TypeScript 类型声明文件.d.ts

    文章目录 一.TS 中的两种文件类型 二.类型声明文件的使用说明 1. 使用已有的类型声明文件 1.1 内置类型声明文件 1.2 第三方库类型声明文件 1.2.1 库自带声明文件 1.2.2 Defi ...

  3. react-native 为本地js和开源库的js编写.d.ts声明文件

    读书不觉已春深 !明日清明节 在使用Typescript编写程序RN过程中遇到困扰,且不论react,不论在浏览器中,只论写react-native的APP,怎么使用 declare声明文件 和 na ...

  4. ts自动编译声明文件_拥抱 TS:细数选择 TS 的 N 种理由

    作者 | 马靖 day day up, bye bye bug 最近在做一个新项目,技术大佬告知前端要用 TS .前端小白的我内心疑惑"弱类型语言它不香嘛,为什么选择 TS ?" ...

  5. VSCode 中,TS 提示 ”无法找到 *.vue 声明文件“ 的解决方案

    在使用 VSCode 开发 Vue3 + TS 项目时,编辑器一直有一个报错,因为不影响编译和运行,所以就一直没在意,但这两天看着这红杠提示实在是太别扭,今天就来解决一下这个问题,还自己一个清爽的开发 ...

  6. ts自动编译声明文件_TS 的声明文件

    打算为你的团队写一个封装好的工具?TS的声明文件是必不可少的,它不仅仅让你的工具支持TS,更是负责充当一个说明书的作用,让人对其的使用一目了然. 什么是声明语句?什么时候需要他? 假如我们想使用第三方 ...

  7. class ts 扩展方法_ts类型声明文件的正确使用姿势

    ts类型声明文件的正确使用姿势 ts声明文件类型 npm install @types/jquery --save-dev 与npm一同发布 解释: package.json 中有 types 字段, ...

  8. 在ts文件中引入js模块,编写声明文件的方法

    一.声明文件的作用 在ts文件中引入js文件,由于js代码中没有类型约束,所以ts无法获得js代码的类型信息,进而会隐式推断js中类型为any,失去了ts代码类型推断和约束的作用,声明文件就是将一个j ...

  9. 关于vue3+ts import引入js出错无法找到模块“XXXXX”的声明文件。

    最近在写一个小项目在做一个提示封装时候出现了 无法找到模块"-/components/message.js"的声明文件."e:/Vue/客/cms_v3/src/comp ...

最新文章

  1. 云拨测助力节卡机器人,全面优化海外网站性能
  2. (原创) 看电影 源代码 有感——量子力学的玄妙
  3. Python 数据科学入门
  4. 过Serverless技术降低微服务应用资源成本
  5. 如何在Web浏览器中查看XML文件
  6. 如何设置 Web 服务器的权限之iis
  7. java list 差集_Java基础之集合框架
  8. layui表单元素的radio单选框问题
  9. 计算机组成原理 王道考研2021 第一章:计算机组成原理概述 -- 计算机硬件的基本组成、认识各个硬件部分
  10. mysql年龄数据类型_MySql 数据类型
  11. sql函数REPLACE用法,根据指定字符串替换成想要的字符串
  12. 2021年第十八届五一数学建模竞赛题目 C题 数据驱动的异常检测与预警问题 解题论文完整版
  13. python实现DES加密解密
  14. python中的array函数作用_Python中的numpy常用函数整理
  15. 小米手机miui12系统下拉通知栏有通知但是看不到通知内容
  16. python函数定义时缩进的作用_定义函数时,函数体的正确缩进为?_学小易找答案
  17. Pycharm this applicatation failed to start because it could not find or laod the qt plaform plugin
  18. MM模块物料-供应商-PO-表
  19. GB、Gb、MB、Mb知识扫盲
  20. 探索TiDB Lightning源码来解决发现的bug

热门文章

  1. 【硬件相关】PCIe组件配置说明
  2. 使CPU利用率跑高的脚本致使服务器死机
  3. kubeedge边缘节点安装
  4. 相对全面的四足机器人驱动规划MATLAB和Simulink实现方式(足端摆线规划,Hopf-CPG,Kimura-CPG)
  5. 初识C语言(C语言入门)(下)
  6. 搜狗微信文章爬取(中)
  7. 快递赔偿制度“五花八门”亟待规范
  8. 数字化时代到来传统经营模式企业猝不及防
  9. 流媒体之从零实现搭建简单流媒体服务器,推流,拉流播放全景视频
  10. ubuntu18安装vnc远程桌面服务