TypeScript 声明文件结构.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TypeScript 声明文件结构

TypeScript 声明⽂件结构 TypeScript 声明⽂件结构 概述 ⼀般来讲,你组织声明⽂件的⽅式取决于库是如何被使⽤的。 在JavaScript⾥提供了 多库的使⽤⽅法,这就需要你书写声明⽂件去匹配它们。 这篇指南涵盖了如何识别 常见库的模式,与怎么样书写符合相应模式的声明⽂件。 针对每种主要的库的组织模式,在模版⼀节都有对应的⽂件。 你可以利⽤它们帮助你 快速上⼿。 识别库的类型 ⾸先,我们先看⼀下TypeScript声明⽂件能够表⽰的库的类型。 这⾥会简单展⽰每种 类型的库的使⽤⽅式,如何去书写,还有⼀些真实案例。 识别库的类型是书写声明⽂件的第⼀步。 我们将会给出⼀些提⽰,关于怎样通过库 的 使⽤⽅法及其源码来识别库的类型。 根据库的⽂档及组织结构不同,这两种⽅式 可能⼀个会⽐另外的那个简单⼀些。 我们推荐你使⽤任意你喜欢的⽅式。 全局库 全局库是指能在全局命名空间下访问的 (例如:不需要使⽤任何形式的import)。 许多库都是简单的暴露出⼀个或多个全局变量。 ⽐如,如果你使⽤过 j Query ,$变量 可以被够简单的引⽤: $(() = { console.log(hello!); } ); 你经常会在全局库的指南⽂档上看到如何在HTML⾥⽤脚本标签引⽤库: script src=http://a.great.cdn. or/someLib.js/script ⽬前,⼤多数流⾏的全局访问型库实际上都以UMD库的形式进⾏书写 (见后⽂)。 UMD库的⽂档 难与全局库⽂档两者之间难以区分。 在书写全局声明⽂件前,⼀定 要确认⼀下库是否真的不是UMD 。 从代码上识别全局库 全局库的代码通常都⼗分简单。 ⼀个全局的“Hello , world”库可能是这样的: unction createGreeting(s) { return Hello, + s; } 或这样: window .createGreeting = unction(s) { return Hello, + s; } 当你查看全局库的源代码时,你通常会看到: 顶级的var语句或 unction声明 ⼀个或多个赋值语句到window .someName 假设DOM原始值像document或window是存在的 你不会看到: 检查是否使⽤或如何使⽤模块加载器,⽐如require或de ine Commo JS/Node .j s风格的导⼊如var s = require( s); de ine(...)调⽤ ⽂档⾥说明了如果require或导⼊这个库 全局库的例⼦ 由于把⼀个全局库转变成UMD库是⾮常容易的,所以 少流⾏的库还再使⽤全局的风 格。 然⽽,⼩型的且需要DOM (或 没有依赖)的库可能还是全局类型的。 全局库模版 模版⽂件global.d.ts定义了myLib库作为例⼦。 ⼀定要阅读 防⽌命名冲突补充 说明。 模块化库 ⼀些库只能⼯作在模块加载器的环境下。 ⽐如,像 express只能在Node .j s⾥⼯作所 以必须使⽤Commo JS的require函数加载。 ECMAScript 20 15 (也就是ES20 15 ,ECMAScript 6或ES6 ),Commo JS和RequireJS具 有相似的导⼊⼀个模块的表⽰⽅法。 例如,对于JavaScript Commo JS (Node .j s ), 有下⾯的代码 var s = require( s); 对于TypeScript或ES6 ,import关键字也具有相同的作⽤: import s = require( s); 你通常会在模块化库的⽂档⾥看到如下说明: var someLib = require(someLib); 或 de ine(..., [someLib], unction(someLib) { }); 与全局模块⼀样,你也可能会在UMD模块的⽂档⾥看到这些例⼦,因此要仔细查看源 码和⽂档。 从代码上识别模块化库 模块库⾄少会包含下列具有代表性的条⽬之⼀: ⽆条件的调⽤require或de ine 像import * as a rom b; or export c;这样的声明 赋值给exports或module.exports 它

文档评论(0)

rovend + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档