2012-03-13 50 views
1

在Node.js中,我安裝了underscore.js模塊。試圖包括它在這樣的佈局:在node.js中使用npm後,從客戶端訪問underscore.js

script(src='/underscore/underscore-min.js') 
script(src='/socket.io/socket.io.js') 

但是socket.io是唯一被發現。在node_modules/socket.io中,沒有socket.io.js文件,但在node_modules/underscore/中有一個udnerscore-min.js。我究竟如何拉下socket.io而不是underscore.js? socket.io是否運行一些代碼並創建socket.io/目錄並將文件放在那裏?如果是這樣,underscore.js使用什麼方法?

回答

0

我假設你使用快速框架的東西,如:

var app = express.createServer(), 
      io = io.listen(app); 

如果是這樣的話,那麼Socket.io會自動創建一個路由/socket.io/socket.io.js。如果你想服務器underscore-min.js你可以嘗試symlinking它到一個靜態目錄(這有點哈克...)。

我想使用類似Stitch或者縮小你的所有外部庫,以一個文件將是一個更好的解決方案,同時也將減少HTTP請求的數量...

編輯: 我只是發現visionmedia/asset這真的很棒!它仍然不提供訪問node_modules內的模塊,但它使得整個JavaScript資產管理不僅可以忍受,而且也很有趣。

你有一個應用程序使用express.js?假設你想用jQuery和下劃線提供brwowser。所有你現在要做的是:

$ asset jquery underscore -c -o public/js 

     install : [email protected] 
     install : [email protected] 
     download : [email protected] 
     complete : [email protected] public/js/jquery.min.js 
     download : [email protected] 
     complete : [email protected] public/js/underscore.min.js 

就是這樣! :-)

+0

感謝您的超值資產。我現在使用它..它非常方便。 :) – murvinlai 2013-11-09 23:46:03