首页 > 解决方案 > 如何在项目之间共享 Typescript 类型?

问题描述

我有两个项目(客户端和服务器)应该共享相同的定义。为了实现这一点,我在一个额外的 npm 包中外包了我的定义 ( .d.ts),我通过npm link. 两个主要项目都无法识别新 npm 包中的类型。我以各种组合尝试了package.json( types) 设置和tsconfig.json( types, typeRoot) 中的一些设置,但我没有得到正确的设置。

我必须在定义包和主包中设置什么才能使其正常工作?

标签: typescripttypescript-types

解决方案


typestypeRoots没有为我工作,我尝试了许多不同的路径/组合(尤其是在typeRoots)。

最后我添加了这一行

"include": [
    ...,
    "node_modules/<my-npm-package>/*.ts"
],

在 tsconfig.json 中,我的外包类型在项目中可用。


推荐阅读