2013-04-17 25 views
2

由於我的辦公系統的代理限制,對於安裝節點及其模塊,我依賴於外部PC。我有node.exe,在我的外部系統npm.cmd,我能夠從我的外部PC下載模塊有從本地文件夾引用節點模塊

故宮安裝快車

我複製了node_modules文件夾把它放在我的節點安裝路徑在我的辦公室PC,但我還是沒能做到

要求(「表達」)

它說模塊沒有找到* 那麼我認爲節點沒有考慮這個模塊安裝,所以我複製模塊文件夾附近我的項目和我的一個js文件我引入了一個路徑變量。

var path ='D:/ sw/nodejs /'; //這裏我暫時複製了express文件夾 var express = require(path +'express'),app = express.createServer();

在運行時,我沒有找到模塊'connect'。

我應該在哪裏放置這些從屬模塊,讓它們正常工作,並且 我們不能通過將它們粘貼到node_modules中來安裝節點的模塊嗎?

回答

3

你必須設置NODE_PATH變量在您的環境

set NODE_PATH=D:/sw/nodejs/node_modules 

然後你可以使用內部D:/sw/nodejs/node_modules所有模塊。快遞要求連接模塊,它不能與require('connect')找到,不像您通過require(path+'express')撥打的快遞。

您還可以在';'分隔的NODE_PATH中指定多個路徑

set NODE_PATH=C:/path/1;C:/path/2; 

這將是最好設置一個不是每次鍵入它在控制檯上。轉至:
我的電腦>右鍵單擊>屬性>高級系統設置>環境變量>新建
並在此處設置變量NODE_PATH。您將不得不重新開始查看更改。

+0

精湛的工作:) – sij

0

或者:

  • 把下載的包成node_modules文件夾的根(從那裏你調用節點)的你的項目/源代碼。
  • Set up npm的代理。 (Example
+0

如果你正確地閱讀我的問題,我已經提到過,你剛剛回答了什麼 – sij

+1

@sij我不知道你已經嘗試了代理方法。我也想顯示該模塊不必全局安裝在$ NODE_PATH上,而是可以在您的項目中生存 – TheHippo

+0

請編輯您的答案 – sij

相關問題