首页 > 其他分享 >TypeScript:声明文件

TypeScript:声明文件

时间:2022-09-26 20:24:29浏览次数:42  
标签:jQuery 文件 TypeScript ts foo 声明 types

声明文档的作用

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

假如我们想使用第三方库 jQuery,一种常见的方式是在 html 中通过 <script> 标签引入 jQuery,然后就可以使用全局变量 $ 或 jQuery 了。
我们通常这样获取一个 id 是 foo 的元素:
$('#foo');
// or
jQuery('#foo');

但是在 ts 中,编译器并不知道 $ 或 jQuery 是什么东西:
jQuery('#foo');
// ERROR: Cannot find name 'jQuery'.

这时,我们需要使用 declare var 来定义它的类型
declare var jQuery: (selector: string) => any;
jQuery('#foo');
 

什么是声明文件 通常我们会把声明语句放到一个单独的文件(jQuery.d.ts)中,这就是声明文件 声明文件必须以 .d.ts 为后缀

// src/jQuery.d.ts
declare var jQuery: (selector: string) => any;
​
// src/index.ts
jQuery('#foo');

 

第三方声明文件 jQuery 的声明文件不需要我们定义了,社区已经帮我们定义好了 我们可以直接下载下来使用,但是更推荐的是使用 @types 统一管理第三方库的声明文件。 @types 的使用方式很简单,直接用 npm 安装对应的声明模块即可,以 jQuery 举例 npm 

install @types/jquery --save-dev

 

标签:jQuery,文件,TypeScript,ts,foo,声明,types
From: https://www.cnblogs.com/LIXI-/p/16732237.html

相关文章

  • TypeScript:泛型
    什么是泛型泛型(Generics)是指在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性。1函数泛型//<T>表示定义模板类型,(arg:T):T表示......
  • 声明与定义,重定义
    变量(包括变量,函数)的使用过程需要声明,定义,使用。声明:告诉编译器目标对象存在,但是编译器不用管是否真实存在。定义:为变量开辟空间,则定义过后该变量就存在了全局唯一地址......
  • TypeScript:类的类型变量
    classPerson{//脱衣服privatedisrobe(){//.....}//穿衣服privatedress(){//.....}//洗操publictak......
  • TypeScript:函数
    接口中使用函数接口可以描述函数类型;为了使用接口表示函数类型,我们需要给接口定义一个调用签名。它就像是一个只有参数列表和返回值类型的函数定义。参数列表里面的每个参......
  • 瑞吉外卖-文件上传下载
    文件上传下载文件的上传文件上传,也称upload,是指将本地图片、视频、音频等文件上传到服务器上,可以提供其他用户浏览或下载的过程。文件上传在项目中应用非常的广泛,我们经......
  • TypeScript:类
    一、概念简单认知类是现实世界或思维世界中的实体在计算机中的反映,它将数据(属性)以及这些数据上的操作(方法)封装在一起。对象是具有类类型的变量。类和对象是面向对象......
  • TypeScript:类型断言
    什么是类型断言有些时候,我们需要做一些“自己比编译器更清楚的知道自己在做什么”,这个时候就用到断言,告诉编译器:没错,就是这样的,就是要这么干。编译器也就假设:嗯,这个程序员......
  • 目录和文件管理
    目录和文件管理Linux目录结构树形目录结构根目录所有分区、目录、文件等的位置起点整个树形目录结构中,使用独立的一个“/”表示常见的子目录/root:系统管理员root的宿主......
  • 关于使用shutil.rmtree删除git文件夹时出现拒绝访问的问题
    简介在实际项目中发现,当使用shutil.rmtree删除整个git目录时会出现.git文件无法删除的情况,报错是拒绝访问,原因是默认情况下.git文件是只读的,无法直接对其进行操作。解决......
  • Spring MVC框架:第九章:文件上传
    第七章文件上传1.表单2.jar包commons-fileupload-1.3.jar和commons-io-2.0.1.jar3.配置CommonsMultipartResolver注意:id必须是multipartResolver4.接收数据①普通......