<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          編寫聲明文件

          共 905字,需瀏覽 2分鐘

           ·

          2021-07-06 18:10


          一般來(lái)講,你組織聲明文件的方式取決于庫(kù)是如何被使用的。在JavaScript中一個(gè)庫(kù)有很多使用方式,這就需要你書寫聲明文件去匹配它們。


          比如使用 declare var 聲明變量。如果變量是只讀的,那么可以使用 declare const。你還可以使用 declare let 如果變量擁有塊級(jí)作用域。


          declare var foo: number;


          現(xiàn)在我們已經(jīng)按照指南里的步驟寫好一個(gè)聲明文件,是時(shí)候把它發(fā)布到 npm 了。有兩種主要方式用來(lái)發(fā)布聲明文件到 npm:


          1、與你的 npm 包捆綁在一起,或

          2、發(fā)布到 npm上的 @types organization。


          推薦第一種方式。這樣的話,你的聲明文件與 JavaScript 總是在一起發(fā)布。


          如果你的包有一個(gè)主 .js 文件,你還是需要在 package.json 里指定主聲明文件。設(shè)置 types 屬性指向捆綁在一起的聲明文件。比如:


          {    "name": "awesome",    "author": "Vandelay Industries",    "version": "1.0.0",    "main": "./lib/main.js",    "types": "./lib/main.d.ts"}


          發(fā)布到 npm 上的 @types,@types 下面的包是從 DefinitelyTyped 里自動(dòng)發(fā)布的,通過(guò) types-publisher 工具。如果想讓你的包發(fā)布為 @types 包,提交一個(gè) pull request 到https://github.com/DefinitelyTyped/DefinitelyTyped 公共組織機(jī)構(gòu)。


          當(dāng)編寫了聲明文件之后,安裝的 npm 包會(huì)有 vscode 代碼提示,當(dāng)編寫代碼的時(shí)候會(huì)出現(xiàn)對(duì)應(yīng)的 API 語(yǔ)法提示內(nèi)容。

          瀏覽 38
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  2020人人操 | 性日熟妇| 五月天黄色小说 | 欧美A片久久 | 欧美乱伦图区 |