Typescript使用ts-node报错Could not find a declaration file for module
ts要用js的第三方modules时,会提示你Could not find a declaration file for module,然后让你install @types/对应的模块名
,或者自己写.d.ts文件。后者的话,随便在哪新建个xxx.d.ts
文件,xxx自己取。然后文件里写上:
1 | declare module "模块名"; |
你可以多个模块声明写在一个文件里,也可以分开。
但是如果你用ts-node的话,写了.d.ts文件还不行,还是会报错找不到。
这时候需要你新建个文件夹,里面再新建个文件夹,然后里面放上.d.ts文件。例如:
┏ node_modules
┣ src
┗ index.ts
┣ types
┗ package
┗ alltypes.d.ts
┣ tsconfig.json
┗ package.json
然后在tsconfig.json里添加:
1 | "ts-node": { |
重点是"./types"
部分,让ts-node知道你的.d.ts在哪里。其实文件夹types和package随你换别的名字,甚至文件夹结构怎么样都无所谓,最关键的是上面.d.ts文件和你写到typeRoots里的文件夹中间还加了一层文件夹。如果直接是:
┣ types
┗ alltypes.d.ts
的话,ts-node还是无法识别到.d.ts文件。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Decmoe47's Blog!
评论