狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

學TypeScript必然要了解declare

admin
2024年11月12日 22:24 本文熱度 525

本文轉載于稀土掘金技術社區,作者:努力學習前端的呆瓜

原文鏈接:https://juejin.cn/post/7402811318816702515

背景

declare關鍵字是為了服務TypeScript的。TypeScript是什么在這里就不多介紹了,但是我們要知道ts文件是需要TypeScript編譯器轉換為js文件才可以執行,并且在編譯階段就會進行類型檢查。但是在TypeScript中并不支持js可識別的所有類型,例如我們使用第三方庫JQuery,我們通過一下方法獲取一個id為‘foo’的標簽元素。

$('#foo');
// or
jQuery('#foo');

然而在ts文件中,使用語法,語法,語法,底下就會爆出一條紅線提示到:Cannot find name '$'

?

因此,需要declare來聲明,告訴TypeScript編譯器該標識符已存在,通過編譯時的檢查并在開發時提供類型提示。

定義

在 TypeScript 中,declare關鍵字告訴編譯器存在一個對象(并且可以在代碼中引用)。它向 TypeScript 編譯器聲明該對象。簡而言之,它允許開發人員使用在其他地方聲明的對象。
注:編譯器不會將declare語句編譯為 JavaScript。對比下面兩段代碼:

// declare聲明了一個名為 myGlobal 的全局變量,并指定其類型為 any。
// 該聲明并不會生成真正的 JavaScript 代碼,而只是告訴 TypeScript 編譯器該變量存在。
declare var myGlobal: any;

// 給 myGlobal 賦值為 42。
myGlobal = 42
console.log(myGlobal); // 42
// 直接聲明了一個名為 myGlobal 的全局變量,并指定其類型為 any。這會生成真正的 JavaScript 代碼。
var myGlobal: any;

// 給 myGlobal 賦值為 42。
myGlobal = 42;
console.log(myGlobal); // 42

使用

  • declare var 聲明全局變量
  • declare function 聲明全局方法
  • declare class 聲明全局類
  • declare enum 聲明全局枚舉類型
  • declare namespace 聲明(含有子屬性的)全局對象
  • declare global 擴展全局變量
  • declare module 擴展模塊

聲明文件

通常,在使用第三方庫或模塊時,有兩種方式引入聲明文件:

  • 全局聲明:如果第三方庫或模塊是全局可訪問的,你可以在整個項目的任何地方直接使用它們,而無需顯式導入。此時,你只需要確保在 TypeScript 項目中正確引入了相應的聲明文件。一般情況下,TypeScript 會自動查找并加載全局聲明文件。如果沒有自動加載,你可以使用 /// 的方式在具體的源文件中將聲明文件引入。
  • 模塊導入:如果第三方庫或模塊是通過模塊化方式提供的,你需要使用 import 語句將其導入到你的代碼中,同時也需要確保相應的聲明文件被正確引入。在這種情況下,你可以使用 import 或 require 來引入庫,并且不需要顯式地引入聲明文件,因為 TypeScript 編譯器會根據模塊的導入語句自動查找和加載相應的聲明文件。

有很多第三方庫提供了聲明文件,可以在packages.json文件中查看。types表示類型聲明文件是哪一個。

可以使用 @types 統一管理第三方庫的聲明文件。@types 的使用方式很簡單,直接用 npm 安裝對應的聲明模塊即可,以 jQuery 舉例:

npm install @types/jquery --save-dev


該文章在 2024/11/13 14:42:57 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved