NodeJS Turborepo/Typescript包-维护导入结构

syqv5f0l  于 2023-05-06  发布在  Node.js
关注(0)|答案(1)|浏览(135)

我正在为TypeScript开发一系列包,作为Turborepo项目的一部分。这些包的导入结构的一个例子是

import { Test } from "package-name"
import { Test } from "package-name/Test"

我所面临的问题是,在使用Turborepo进行开发时,我只能这样引用它:

import { Test } from "package-name"
import { Test } from "package-name/dist/Test"
import { Test } from "package-name/src/Test"

这是因为它不在根目录中,而是在src(或者如果构建了dist)目录中。
有什么办法可以绕过这个吗?我在TSConfig中尝试了几个选项,看看这是否能解决这个问题,但似乎找不到任何选项。

c3frrgcw

c3frrgcw1#

所以为了回答我自己的问题,我认为这里的主要机制是(考虑到包的数量有限)我可以在使用该包的主应用程序中使用我的tsconfig.json路径来覆盖导入路径,而不是在包本身中。
可能有一个更干净的方法来做到这一点,但它确实有效。
例如:

"package-name": [
     "../../node_modules/package-name/src/*",
]

我现在可以做:

import { Test } from "package-name"
import { Test } from "package-name/Test"

而不是

import { Test } from "package-name"
import { Test } from "package-name/src/Test"

相关问题