javascript - Turborepo/Typescript 套件 - 維護匯入結構
我正在為 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 中的幾個選項,看看是否能解決這個問題,但似乎找不到任何方法。
答案#1
所以為了回答我自己的問題,我認為這裡的主要機制會是(鑑於包的數量有限)我可以在使用該包的主應用程式中,用我的 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"
