当前位置: 首页 > 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/176252.html

相关文章:

  • 网站后台更新后主页不显示运营什么网站好
  • 做网站什么框架方便网站曝光率
  • 网站建设实用教程工程建设项目网站
  • 网站建站 seo管理咨询岗位做什么
  • 地板网站模板免费下载wordpress导航下拉菜单
  • php创建一个网站沈阳网站设计营销型
  • 做网站需要会的软件发广告平台有哪些
  • 专业网站设计力荐亿企邦快云助手网站建设视频
  • 从化电子商务网站建设一个优秀的网站
  • 大概开发一个网站多少钱搭建网站的方案
  • 健身网站开发过程中遇到的麻烦怎么制作弹幕网站
  • 网站cms在线识别在家做的打字兼职的网站
  • HTML5做网站例子如何做手机网站
  • django完整网站开发一般一个网站从建设到运营要多久
  • 如何做自己网站的访问记录微信公众平台二次开发
  • 做企业营销网站大连住房保障网官网
  • 知名网站建设设计网站数据库安装教程
  • 网站 色彩方案北京冬奥会吉祥物设计制作
  • 大悟网站建设网络科技官网网站建设
  • 公司网站建设方案模板下载北京游戏公司排名
  • 湛江专业网站建设公司用iis制作简单网站
  • 淄博网站推广wordpress如何添加模板文件夹
  • 查询网站备案时间网页站点怎么命名
  • 潍坊建设网站多少钱电商平台项目商业计划书
  • 城乡住房建设部网站造价师网电商运营教程
  • 驻马店网站建设电话软件公司名字起名大全
  • 今天国际新闻消息河源市企业网站seo价格
  • 网站正在建设中中文网站建设h5
  • 网站建设费用入账山西企业建站系统平台
  • vi设计可以做哪方面的昆明seo网站