当前位置: 首页 > news >正文

网站建设费算什么费用没被屏蔽的国外新闻网站

网站建设费算什么费用,没被屏蔽的国外新闻网站,阳信县住房和城乡建设局网站,原画零基础自学TypeScript 怎么去查找类型定义的?类型文件分类第三方库的类型自定义类型结论类型文件分类 我们项目中的类型文件分为两种:一类是第三方库的类型,一类是在项目中的自定义类型。 第三方库的类型 (1)Jquery&#xff1…

TypeScript 怎么去查找类型定义的?

  • 类型文件分类
    • 第三方库的类型
    • 自定义类型
    • 结论

类型文件分类

我们项目中的类型文件分为两种:一类是第三方库的类型,一类是在项目中的自定义类型。

第三方库的类型

(1)Jquery:这是一个使用js写的库而不是ts。所以我们在ts中使用jquery是没有类型提示的。所以需要下载该库的一个类型包@types/jquery。
(2)react-use:这是一个用ts写的一个库,该库的package.json中含有types字段,即类型文件的入口。所以不用下载类型包。

自定义类型

针对没有类型的某些字段或者库,一般我们会在项目根目录创建 *.d.ts为其声明类型(全局库)。或者我们会在我么的ts、tsx文件中导出某种类型(模块化库)。

结论

那既然定义了这么多类型,ts编译器是如何找到它们的呢?

  1. 首先要说的是其实第三方库的类型查找的规则和 node 的包查找是类似的,首先会在当前文件夹找 node_modules,在他下面递归的去查找,如果找不到就会去上层的目录找到 node_modules 目录,再递归查找,直到根目录。
    (1)拿Jquery来说,ts编译器会在当前文件夹下的node_modules中找到Jquery,然后在package。json查找 types 属性发现没有。说明这是个js库。然后就去@types下面去找Jquery的类型定义。在package.json中发现有types属性,说明这个文件就是 jquery 类型定义的入口。
    (2)拿react-use来说,它是ts写的库,那么这个库的package.json中就含有types属性,就不需要类型包了。
  2. 之所以ts编译器会从@types下去找类型包,是tsconfig起了作用。tsconfig下有两个属性typeRoots 、types,它们的作用是啥?typeRoots 默认指向 node_modules/@types,这也就说明了为什么 ts 会去 @types 下面去找类型定义文件,既然这样说明我们也可以手动去调整 ts 的查找路径,比如我们本地用 ts 开发了一个通用的组件库,他的类型定义文件保存在 typings 目录下,那我们可以这么修改:
 "typeRoots": ["node_modules/@types","./typings"]

如果不希望自动引入 typeRoots 指定路径下的所有声明模块,那可以使用 types 指定自动引入哪些模块,比如:

"types" : ["node", "lodash", "express"]

那么就只会引入 node 、lodash、express 这三个声明模块,其它的声明模块则不会被自动引入

  1. 接着说files、include和exclude这三个属性是控制着 ts 编译器的编译范围,他们各自的特点如下:
    files 是一个数组,数组的元素可以是相对路径和绝对路径
    inclue 和 exclude 属性是一个数组,但是组的元素类似 glob 的文件模式,比如*、?、**/这种通配符的形式
    如果同时设置了files和include,那么编译器会把两者指定的文件引入,而 exclude 只会对 include 有效,对 files是无效的,即files指定的文件如果同时被 exclude 排除,那么该文件仍然会被编译器引入。
http://www.15wanjia.com/news/4025.html

相关文章:

  • ps做网站像素大小网络营销的常用方法有哪些
  • 高端营销网站怎样搭建自己的网站
  • 现在外贸做哪个网站好开鲁网站seo站长工具
  • 潍坊响应式网站建设中国站长站官网
  • 好一点的网站建设公司seo网站优化方法
  • 快速网站开发品牌服务推广
  • 网站js代码检测电脑培训
  • 做网站国外网站店铺引流的30种方法
  • 哈尔滨建站的系统网站建设杭州
  • 哪些网站做的比较好看的深圳网站开发技术
  • 广告策划公司简介seo网站推广培训
  • 太湖县住房和城乡建设网站市建设局属于免费的网络营销方式
  • 做网站的编程语言产品seo怎么优化
  • 模板网站怎么做百度商家版下载
  • 如何提高网站的搜索排名磁力狗bt
  • 东莞信息网seo关键词有话要多少钱
  • 网站开发工程师月薪seo顾问
  • web到wordpress宁波seo优化
  • 南京电子商务网站开发公司发外链的网址
  • 网络公司网站建设营销方法
  • 建设网站公司不给源代码人工智能培训师
  • 网站制作建立公司品牌推广方案范文
  • 衡阳县专业做淘宝网站域名申请
  • 石家庄做网站的sem投放
  • 做网站在阿里云买什么软件百度指数官网首页
  • 爬墙专用加速器seo优化包括
  • b2b网站建设排名百度官方客服电话
  • 做暧暧的网站18款禁用软件黄app免费
  • 中国室内设计网站官网培训方案模板
  • 建网站流程 知乎怎么做网络广告推广