我想包括一個本地庫,所以我遵循這兩個教程:how to create library,how to consume local library。所以,我有一個很好的示例庫(它有package.json,index.ts等),我試圖將其包含在我的主項目(npm link
工作正常,我可以看到一個符號鏈接到我的lib),但我不能轉介它來自我的主要項目。使用本地模塊,使用本地依賴關係
import { HelloWorld } from "my-test-lib"; // "Cant find module"
而且,我試圖通過npm install ../libs/my-test-lib
安裝它,但結果都是一樣的:「不能找到模塊」。有關如何將其納入我的項目的任何建議?
PS:我更喜歡npm install
之類的東西,所以我可以將這個改變提交到版本庫(與npm link
相反)。
EDIT(爲什麼它不重複):在how to specify local modules as npm package dependencies它不清楚哪個方向走:既"bar":"file:../foo/bar"
和npm link
不工作,我上面提到的原因。
編輯2:好的,我已經在package.json中嘗試了"preinstall": "npm ln my-test-lib ../libs/my-test-lib"
。然後import { HelloWorld } from "my-test-lib";
。還是一樣的錯誤「無法找到模塊」。包裝本身可能有問題嗎?
EDIT3:所以,是的,這個問題的要點是要弄清楚爲什麼
// package.json
"dependencies": {
"my-test-lib": "file:../lib/my-test-lib"
}
// ts file
import { HelloWorld } from "my-test-lib";
不工作。想知道,我該如何調試。
你可能包括您參考當地的圖書館。 – HerbN
是的,我在package.json中看到一行「my-test-lib」:「file:../ libs/my-test-lib」,但我仍然不能將它用於相同的錯誤「不能找到模塊」 。 –
如果你發現「如果是的話,那麼這個問題的主要目的就是要弄清楚爲什麼」可能編輯問題只包含這個問題 - 沒有任何額外的問題的最小表示。 – Nenotlep