在我的项目中,我正在导入一个对象。该对象是由一个函数创建的,因此IDE不知道其上有什么键(根据提供的配置,它们是动态的)。我的想法是,我可以生成一个描述对象的.d.ts
文件,以便希望了解其上哪些键的人可以在IDE中通过代码完成找到它们。
// dynamicObject.js
export default makeAnObject(config);
// useObject.js
import someObject from './dynamicObject.js';
const result = someObject.| (code editor dropdown of keys here)
另一方面,我对将.d.ts
文件与这些文件放在同一目录中的不感兴趣。我假设tsconfig.json
可以解决这个问题,但是我不知道.d.ts
文件的语法是什么样。 Typescript对我来说非常陌生,文档也无济于事。
对于我的dynamicObject.d.ts
文件,我从类似这样的内容开始
declare namespace someObject {
interface oneKey {
nestedKey: string
}
}
但是代码编辑器仍然不知道对象组成是什么。我不确定这是写.d.ts
文件的方式还是tsconfig.json
中缺少的方式?
答案 0 :(得分:0)
需要在tsconfig.json中声明typeRoots。
下面是示例
{
"compilerOptions" : {
"typeRoots" : [ "./node_modules/@types", "./src/types"]
}