在一个typescript(Angular 9(项目中,我试图导入一个私有的JS库。
当我用import { myMethod } from 'my-private-repo/dist/util';
导入它时,我会得到以下错误:
Could not find a declaration file for module 'my-private-repo/dist@types/util'. 'my-private-repo/dist/util.js' implicitly has an 'any' type.
Try `npm install @types/my-private-repo` if it exists or add a new declaration (.d.ts) file containing `declare module 'my-private-repo/dist/util';`
我试图解决在typings
文件夹中添加具有以下内容的声明文件的问题:declare module "my-private-repo/dist/util";
,甚至是declare module "*";
,但错误没有改变,就像我更改ts配置以包含它时,我的声明文件根本没有被读取一样:
{
...
"compilerOptions": {
...
"noImplicitAny": true,
...
"typeRoots": [
"./typings",
"./node_modules/@types"
]
}
}
我不明白为什么我的申报文件没有被识别。
你知道吗?
谢谢:(
您需要在以下路径之一中添加一个声明文件:
-
'my-private-repo/dist/util.d.ts'
-
'my-private-repo/dist/package.json'
(并指定"类型"属性( -
'my-private-repo/dist/@types/util.d.ts'
阅读typescript如何加载模块:https://www.typescriptlang.org/docs/handbook/module-resolution.html