我需要创建一个包含(仅(自定义类型定义(typedefs(的专用npm包。这些是手写的d.ts文件,不是由TypeScript生成的。由于这些是专有的,我不能将它们添加到"确定类型"中。
文件夹结构:打字员/mymodule/index.d.ts
index.d.ts包含:declare module mymodule { ... }
该包保留了结构,因此在另一个项目中安装后,我有:
node_modules/@mycompany/mypes/typengs/mymodules/index.d.ts
不幸的是,现在我不得不在另一个项目中编辑tsconfig.json来添加:
"include": [
"node_modules/@mycompany/mytypes/typings"
],
或者可选地(更正确地说?(在compilerOptions
:下添加
"typeRoots": [
"node_modules/@types",
"node_modules/@mycompany/mytypes/typings"
]
之后,它就工作了——我可以在其他项目中参考mymodule.SomeType
。
有没有一种方法可以让它在npm安装时自动工作,而不必编辑tsconfig includes(也就是说,让它表现得像一个确定性类型的包(?
如果有更正确的方法,那就是一个有效的答案。
我使用的是TypeScript 3.6或3.7,具体取决于导入项目。
有没有一种方法可以让我在npm安装时自动工作,而不必编辑tsconfig包括
在不对tsconfig.json进行任何更改的情况下,使这项工作的唯一方法是,如果打字是作为您尝试使用的模块的一部分提供的。
例如,如果您用TypeScript编写包,则作为模块一部分的运输将自动发生。