TypeScript一般在项目的根目录有时候会看到,有global.d.ts
文件:
declare module '*.json' {
export const version: string;
export const value: any;
}
请问下,这个定义有什么用呢?
TypeScript一般在项目的根目录有时候会看到,有global.d.ts
文件:
declare module '*.json' {
export const version: string;
export const value: any;
}
请问下,这个定义有什么用呢?
看下官方文档:https://www.typescriptlang.or...。
简单地说就是全局类型定义的地方,比如css定义,偷懒时直接 declare 一个无类型的第三方库。
8 回答4.9k 阅读✓ 已解决
6 回答3.6k 阅读✓ 已解决
6 回答2.5k 阅读
5 回答6.5k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
3 回答2.6k 阅读✓ 已解决
并不是每个项目都有
global.d.ts
文件。比如 Vite 项目一般会创建一个vite-env.d.ts
文件。.d.ts
属于 TypeScript 的 Declaration Files 的概念,里面应该是类型声明的代码。主要有以下的用途:.ts
文件会变成可执行的.js
+.d.ts
文件,其它人使用你的 package 会执行.js
文件,但是通过.d.ts
文件来获得类型信息某些项目本身不是通过 TypeScript 写的,如果需要支持 TS 类型,需要另外手写一套
.d.ts
文件来提供类型的信息,一般这种叫做 DefinitelyTyped@types/xxx
下载对应的 types 库(如果有人写了的话),如果没有人提供的话你可以在自己的项目中新建一个.d.ts
然后在里面编写declare module
@types/react
用户提供 TS 类型信息declare module ‘*.json’
有什么用?在 TypeScript 2.9 之前如果你想要在 TS 中引入一个 JSON 文件,就需要这样进行类型声明。
https://stackoverflow.com/questions/49996456/importing-json-file-in-typescript