[英]VS Code shows module not found even though WebPack build works
我的 VS Code 說它找不到導入,即使我的 WebPack 構建仍然有效。
這里是進口...
import * as tf from '@tensorflow/tfjs';
以及來自 VS Code 的消息:
找不到模塊“@tensorflow/tfjs”。 您是要將“moduleResolution”選項設置為“node”,還是要向“paths”選項添加別名?
我已經閱讀了一些關於路徑別名的內容,可以在tsconfig.json
中設置這些別名以縮短模塊的長路徑。 但是,如果這是一個路徑別名,而我沒有在我的tsconfig.json
中配置它,那么 WebPack 如何知道模塊位於何處?
我還讀到路徑別名的約定是以“@”開頭,但“node_modules”本身中的文件夾稱為“@tensorflow”,所以我不知道它是否真的是路徑別名,如果不是,也許 WebPack 神奇地知道它必須在“node_modules”中搜索這個模塊?
如您所見,我對此真的很困惑,如果有人可以為我解決這個問題並解釋我必須做些什么來阻止 VS Code 抱怨導入,我會很高興。
我自己找到了解決方案。
我只在“路徑”選項中明確地在 tsconfig.json 中找到了有關定義別名的內容,但這不能解決我的問題,因為在我的其他 Angular 項目中,即使我正在使用,也沒有像這樣定義的東西@Angular 在沒有這個問題的情況下導入了很多。
但后來我在我的 Angular 項目"moduleResolution": "node"
中發現了這個。
如其他 typescript 文檔所述:
但是,非相對模塊名稱的解析執行方式不同。 Node 將在名為 node_modules 的特殊文件夾中查找您的模塊。
看,它起作用了。 是的,我可能早點嘗試過這個,因為它寫在我的問題的 VS Code 的消息中,但我雖然這只適用於 node.js 個特定項目,但我沒有在任何地方讀到過這個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.