因此,我为一个名称空间下的全局库编写了一堆声明文件。我将50多个d.ts文件组织在不同的子文件夹中,所有这些文件都在types文件夹中。所有的文件都是这样写的:
declare namespace pc {
class Foo {}
function bar(): void;
}我没有在我的声明文件或项目源代码中的任何地方使用任何三重斜杠指令、导出或导入。TypeScript只是做它自己的事情,一切都会正常工作。现在假设我想要将所有声明文件移动到另一个文件夹,比如文件夹node_modules/playcanvas-typings,我需要做什么才能让TypeScript像使用types文件夹中的声明文件一样使用该文件夹中的声明文件?
我尝试将文件夹添加到tsconfig.json中的typeRoots中,但不起作用。下面是我的tsconfig.json中的编译器选项
"compilerOptions": {
/* Basic Options */
"target": "es5",
"module": "commonjs",
"lib": [
"es2017",
"dom"
],
"sourceMap": true,
/* Strict Type-Checking Options */
"strict": true,
/* Module Resolution Options */
"moduleResolution": "node",
"typeRoots": [
"node_modules/playcanvas-typings"
],
/* Experimental Options */
"experimentalDecorators": true,
"emitDecoratorMetadata": true
}我的集成开发环境和编译器给了我Cannot find namespace 'pc'错误。
发布于 2018-01-05 06:23:55
在tsconfig.json中包含您的文件夹
{
...
"include": [
"types"
]
}https://stackoverflow.com/questions/48100826
复制相似问题