在typescript中存在兩種檔案字尾名,一種是.ts
,另一種是.d.ts
結尾的檔案,我們主要的**都是寫在以.ts
檔案結尾的檔案中。而.d.ts
結尾的檔案就是宣告檔案。
我們都知道,ts 是 js 的超集,ts 是乙個靜態的型別檢查系統,ts 比 js 多的就是型別檢查,而實現型別檢查的關鍵就是 ts 中的宣告檔案。所以宣告檔案的作用是為js 提供型別檢查而存在的。
我們在node 中搭建ts的環境中,就需要安裝@types/node
這個宣告檔案。
在tsconfig.json
中使用配置typeroots:
裡面配置,這裡手動配置了就會失效node_modules
和include
裡面配置的。
編寫的ts **可以自動生成三個檔案,js 檔案
,.d.ts 檔案
, 和.js.map 檔案
,但是後面兩者都需要手動在tsconfig.json
中進行手動配置,生成編譯生成js檔案
不需要配置的話會在當前ts 的目錄下面生成js 檔案,如果想向vue 打包生成outdir:'目錄名稱'
,生成.d.ts
配置:"declaration": true
,生成js.map
需要配置:"sourcemap": true
,
宣告檔案的編寫有兩種方式,對於我們寫的**是ts 的**,可以自動生成。手動編寫
自動生成
,
所有的宣告檔案都是給ts 認識的,改檔案不參與函式的執行
方法
工程是使用ts開發的,發布(編譯)之後,是js檔案,發布的是js檔案。
如果發布的檔案,需要其他開發者使用,可以使用宣告檔案,來描述發布結果中的型別。
配置tsconfig.json
中的declaration:true
即可
全域性宣告
:宣告的檔案放入的名字叫做gloab.d.ts上,不然會報錯配置如下
namespace
表示命名空間,可以將其認為是乙個物件,命名空間中的內容,必須通過命名空間.成員名
訪問這裡不能使用 declare來進行宣告,和 ts 裡面的是一樣的,所有宣告檔案都是給ts 來約束的,不會參與實際的**執行。還是兩種包,一種是ts 開發的,另一種是給js開發宣告檔案編譯完成後,將編譯結果所在資料夾直接發布到npm上即可,手動開啟那兩個配置就好發布到@types/**中。
1) 進入github的開源專案:
2) fork到自己的開源庫中
3) 從自己的開源庫中轉殖到本地
4) 本地新建分支,在新分支中進行宣告檔案的開發
5) push分支到你的開源庫在types目錄中新建資料夾,在新的資料夾中開發宣告檔案
6) 到官方的開源庫中,提交pull request
7) 等待官方管理員審核(1天)
審核通過之後,會將你的分支**合併到主分支,然後發布到npm。
之後,就可以通過命令
npm install @types/你發布的庫名
TypeScript(TS) 入門學習
npm install g ts node 執行檔案 ts node index.ts 設定 vscode 自動編譯 ts 檔案 1.在對應終端執行 tsc init 建立 tsconfig.js 檔案 2.修改 tsconfig.js 檔案,設定編譯後的輸入 js 檔案目錄 outdor js 3...
iOS入門(八)宣告檔案
h 宣告檔案 int sumvalue int x 可以不寫形參 m 實現檔案 import myfunction 匯入函式,雙引號匯入自己寫的,尖括號匯入系統的。函式 函式宣告 xx h 函式定義 xx m 函式呼叫。函式的返回值返回給主調函式,函式即使沒有返回值也可以用return來結束函式的執...
typescript 打包自動生成宣告檔案
在使用typescript 時,會出現打包後生成編譯成js檔案,這導致從從typescript匯出的模組 函式等無法使用 這時,我們需要配置 tsconfig.json 檔案,在 typescript 官方文件中,編譯選項,在這裡找到與生成相應的 d.ts 檔案和 宣告檔案 相關的選項,其中包括 配...