2016-11-25 92 views
1

我想完全理解Typescript如何在Node.js項目中工作。爲了實現這個功能,我創建了我自己的custom_modules文件夾,其中有一個單獨的@types文件夾供我的聲明使用,而實際的實現是在custom_modules下嘗試模仿node_modules的結構。我的目標是通過單獨的聲明和實現使該模塊在項目中非相對可用。我已經能夠安裝這一設置編譯一個項目,但與運行它的錯誤:Typescript自定義節點模塊

Cannot find module 'foo'

來源是可在這裏: https://github.com/anorborg/learn-ts

回答

0

node_modules文件夾是有些特殊情況下,如何打字。這是nodejs如何工作的結果。看看[模塊分辨率]結構(https://www.typescriptlang.org/docs/handbook/module-resolution.html),它更深入地描述了模塊分辨率如何在打字稿中工作。

但總之要回答你的問題:你不能以這種方式使用非相對模塊路徑。節點將在運行時在node_modules中查找該文件,並且在那裏找不到它。 tsconfig.json中的paths屬性用於解決在其他情況下可能發生的問題,例如定位到RequireJS或SystemJS時,而不是在定位節點時。