.d.ts 文件的范围是什么
What is the scope of .d.ts files
所以我在 Typescript Next.js 项目中使用 react-table。这个包由默认不包含但必须在主 useTable
挂钩中启用的模块(如排序、分页等)组成。默认情况下,类型的设置方式不包括与模块相关的属性。
我遵循以下说明:https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-table
它说创建一个 react-table-config.d.ts
文件并将其放在我的源目录中的某个位置,然后修改它以仅包含我需要的模块。
然而,虽然我可能在一个组件中需要某些模块,但在另一个组件中可能不需要。所以我想知道这些文件是否具有全局范围,或者是否可以为两个单独的组件创建两个这样的文件。
例如,如果我有以下目录结构:
src
|
|-- components
| |
| |-- sorted-table
| | |
| | |-- index.tsx
| | |
| | |-- react-table-config.d.ts
| |
| |-- paginated-table
| | |
| | |-- index.tsx
. . |
. . |-- react-table-config.d.ts
. .
```
我觉得这样用的话放在哪里都无所谓
declare global{
//write any interface,type,etc
}
// in the end of the file
export {};
现在您可以使用文件中的任何内容而无需导入它
您只需要为 package.json
中定义的每个包创建一个 d.ts
文件。
However while I might need some modules in one component, I might not need it in another. So I was wondering whether such files have a global scope or if it is possible to have two such files for two seperate components.
是的,它具有全球范围,不可能在一个项目中为同一个包设置两个 d.ts
。你可以把它放在你项目的任何地方,只要它在 tsconfig files
或 include
.
里面
TypeScript 将查找 tsconfig.json
files, include, exclude 下指定的所有 d.ts
文件,并将 declare
映射到正确的包。
所以我在 Typescript Next.js 项目中使用 react-table。这个包由默认不包含但必须在主 useTable
挂钩中启用的模块(如排序、分页等)组成。默认情况下,类型的设置方式不包括与模块相关的属性。
我遵循以下说明:https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-table
它说创建一个 react-table-config.d.ts
文件并将其放在我的源目录中的某个位置,然后修改它以仅包含我需要的模块。
然而,虽然我可能在一个组件中需要某些模块,但在另一个组件中可能不需要。所以我想知道这些文件是否具有全局范围,或者是否可以为两个单独的组件创建两个这样的文件。
例如,如果我有以下目录结构:
src
|
|-- components
| |
| |-- sorted-table
| | |
| | |-- index.tsx
| | |
| | |-- react-table-config.d.ts
| |
| |-- paginated-table
| | |
| | |-- index.tsx
. . |
. . |-- react-table-config.d.ts
. .
```
我觉得这样用的话放在哪里都无所谓
declare global{
//write any interface,type,etc
}
// in the end of the file
export {};
现在您可以使用文件中的任何内容而无需导入它
您只需要为 package.json
中定义的每个包创建一个 d.ts
文件。
However while I might need some modules in one component, I might not need it in another. So I was wondering whether such files have a global scope or if it is possible to have two such files for two seperate components.
是的,它具有全球范围,不可能在一个项目中为同一个包设置两个 d.ts
。你可以把它放在你项目的任何地方,只要它在 tsconfig files
或 include
.
TypeScript 将查找 tsconfig.json
files, include, exclude 下指定的所有 d.ts
文件,并将 declare
映射到正确的包。