【TypeScript】声明文件 [ 编程杂谈 ]
大数据男孩 文章 正文
明妃
{{nature("2022-08-14 17:23:20")}}更新声明文件
在使用 第三方库
时,第三方库
有很多的全局变量
,在使用 TypeScript 时,TypeScript 不知道
这些全局变量
,就会报错
,智能提示
也不好
比如在平常使用 jQuery 时,直接在<script> 标签
引入 jQuery
就会有 $
或 jQuery
了,但在 TypeScript
中就不知道
// 安装 jQuery:npm install jquery
// 导入 jquery
import { jQuery } from "jquery";
jQuery('#foo') # 就会报错
就需要使用
declare var
定义它的类型
declare var
并没有真的定义
一个变量,只是定义了全局变量 jQuery 的类型
,仅仅会用于编译
时的检查
,在编译结果
中会被删除
。
import { jQuery } from "jquery";
declare var jQuery: (selector: string) => any;
jQuery('#foo');
手动定义 声明文件
声明文件名字格式:
xxx.d.ts
,TS编译器会自动去扫描这类文件
创建 jQuery.d.ts
把下面这句从上面独立
出来
declare var jQuery: (selector: string) => any;
缺点:这么多库,这么多全局变量,不可能自己加,所以这些都
提供
有自己的声明文件
下载库自己的声明文件
很多的第三方库都定义了对应的声明文件库
, 库文件名一般为 @types/xxx
可以在 https://www.npmjs.com/package/package 进行搜索
有的第三库在下载时就会自动下载
对应的声明文件库
(比如: webpack),有的可能需要单独下载
(比如jQuery/react)
// 下载 jQuery 声明文件
npm install @types/jquery --save-dev
[]()
{{nature('2020-01-02 16:47:07')}} {{format('12641')}}人已阅读
{{nature('2019-12-11 20:43:10')}} {{format('9527')}}人已阅读
{{nature('2019-12-26 17:20:52')}} {{format('7573')}}人已阅读
{{nature('2019-12-26 16:03:55')}} {{format('5017')}}人已阅读
目录
标签云
一言
评论 0
{{userInfo.data?.nickname}}
{{userInfo.data?.email}}