我刚接触Typescript和NodeJs。每当我在package.json中提到节点模块,并且在导入节点模块时,我总是得到以下错误。
Could not find a declaration file for module 'ini'. 'e:/typescript-2020-1/parser1/node_modules/ini/ini.js' implicitly has an 'any' type.
Try `npm install @types/ini` if it exists or add a new declaration (.d.ts) file containing `declare module 'ini';`
Could not find a declaration file for module 'json-query'. 'e:/typescript-2020-1/parser1/node_modules/json-query/index.js' implicitly has an 'any' type.
Try `npm install @types/json-query` if it exists or add a new declaration (.d.ts) file containing `declare module 'json-query';`为了解决这个问题,我总是在package.json中搜索并安装以下内容,如下所示。
"dependencies": {
"ini": "^1.3.5",
"@types/ini": "^1.3.30",
"json-query": "^2.2.2",
"@types/json-query": "^2.2.0"
"@types/node": "^13.9.0"
}如何避免包含所有类型的节点模块的具体类型。有没有可能在node_modues内部自动添加@types/<node module>,而不是直接添加到package.json?我也尝试在tsconfig.json中添加以下内容,但它不起作用。
"typeRoots": [
"node_modules/@types"
],同样,我的问题是“总是有必要为每个节点模块添加@types吗?请帮助我解决这个问题。”
发布于 2020-03-07 19:07:58
如果npm包包含类型,您将在安装时免费获得它们。
如果不是,那么您可以在npm上的@types名称空间中找到它们。
您可以通过npx安装或运行一个名为typac的有用工具,当您使用它安装任何npm包时,它会尝试为您的包安装@types。
即
npx typac ini -i https://stackoverflow.com/questions/60575796
复制相似问题