我在index.d.ts文件中声明了两个模块,如下所示:
declare module 'googlemaps';
declare module 'detect-resize';它过去工作得很好,所以我可以使用这些模块。
对于googlemaps,我依赖于@types/googlemaps,但是要到运行时才能加载googlemaps API,这是使用API键完成的。
detect-resize只是缺少输入,因此需要declare。
使用角8和更早版本,只要在index.d.ts中声明这些模块,我就不会有任何问题。使用角9,这并不能解决问题,而且我现在无法通过构建。
我发现了角9和index.d.ts报告的问题,但它们都涉及角度材料,并通过改变所使用材料的版本来解决问题。这显然对这里没有帮助。
有人知道解决办法吗?
发布于 2020-07-19 14:43:00
我不知道为什么这能解决问题,但它确实解决了这个问题。我的tsconfig.app.json文件最初看起来如下所示:
{
"extends": "../tsconfig.json",
"compilerOptions": {
"outDir": "../out-tsc/app",
"baseUrl": "./",
"types": []
},
"exclude": [
"test.ts",
"**/*.spec.ts"
]
}从角度8到9的自动升级修改了这个文件如下:
{
"extends": "../tsconfig.json",
"compilerOptions": {
"outDir": "../out-tsc/app",
"baseUrl": "./",
"types": []
},
"files": [
"main.ts",
"polyfills.ts"
],
"include": [
"src/**/*.d.ts"
]
}我必须在index.d.ts部分中显式声明files,如下所示:
{
"extends": "../tsconfig.json",
"compilerOptions": {
"outDir": "../out-tsc/app",
"baseUrl": "./",
"types": []
},
"files": [
"main.ts",
"polyfills.ts",
"index.d.ts"
],
"include": [
"src/**/*.d.ts"
]
}让我困惑的是,include部分(src/**/*.d.ts)中的glob应该匹配index.d.ts (位于src目录的顶部),所以为什么显式声明index.d.ts修复了这个问题,这让我有点困惑。
https://stackoverflow.com/questions/62975695
复制相似问题