惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
WordPress大学
WordPress大学
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
小众软件
小众软件
人人都是产品经理
人人都是产品经理
美团技术团队
Blog — PlanetScale
Blog — PlanetScale
S
SegmentFault 最新的问题
博客园 - 【当耐特】
V
V2EX
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 叶小钗
Google DeepMind News
Google DeepMind News
量子位
罗磊的独立博客
月光博客
月光博客
N
Netflix TechBlog - Medium
大猫的无限游戏
大猫的无限游戏
博客园_首页
P
Proofpoint News Feed
Jina AI
Jina AI
云风的 BLOG
云风的 BLOG
博客园 - 司徒正美
腾讯CDC

博客园 - 饭特稠

10 年前端经验喂了狗 浪浪山老前端的2025 useAttrs 是响应式的吗(by 豆包) 实时互动教育版的自定义 UI 如何开发 2024,在路上 当蓝牙键盘连不上电脑:一次意外的debug之旅 前端技术选型时有用的网站 好用的zsh插件,打造好用的命令行 2023年终总结:怀孕,装修,还贷和其他 分享一个URL正则 使用 scriptable 实现每日诗词小组件 如何使webpack编译 node_modules 中的 npm 包 小程序中实现图片旋转后保存 Custom Elements 和 Shadow DOM了解一下? CSS 原生嵌套来了 聊聊CSS 缓动函数的新成员linear() Workbox -- 为serviceWorker量身定做的工具 cache API简介 重新学车 魔幻2022
chatgpt: 在ts中如何声明一个全局类型
饭特稠 · 2023-03-30 · via 博客园 - 饭特稠

在 TypeScript 中声明全局类型可以使用 declare global 关键字,使得在应用的任何地方都能够使用该类型。

例如,如果需要在 TypeScript 中声明一个全局的 foo 变量,可以使用以下代码:

declare global {
  var foo: string;
}

上述代码中的 declare global 关键字表示声明一个全局类型,接下来的代码则是声明 foo 变量的类型为 string

声明完全局类型后,在 TypeScript 的任何文件中都可以直接使用 foo 变量,而无需再特别地引入或声明该类型。

当然,也可以在 global.d.ts 文件中声明全局类型,该文件的作用类似于 globals.d.ts 文件,会自动被 TypeScript 自动识别,无需进行额外的配置。例如:

// global.d.ts 文件:

declare module 'my-lib' {
  export const foo: string;
}

上述代码中的 declare module 'my-lib' 表示声明一个模块,在模块中可以定义全局类型,例如此处定义了一个 foo 变量。该模块在任何 TypeScript 文件中都可以随意引用和使用,只需要在应用中安装相应的模块即可。