2011-09-14 25 views
1

我正在組建一個我想要發佈的模塊,但是對於如何最好地將其打包,我有點困惑。除了服務器端JavaScript之外,該模塊還需要諸如管理屏幕和客戶端JavaScript文件之類的東西。也就是說,它需要提供一組固定的html/css/js文件。 (我可能有節點靜態模塊作爲依賴)包裝多於代碼的node.js模塊

我很好奇什麼是處理此問題的最佳方法。我想簡化這個過程,將其安裝並集成到應用程序中,而不會強制用戶挖掘長篇README文件。基本上他們應該能夠NPM模塊,然後在相關位置添加一行或兩行代碼,並使其「只是工作」。我不希望他們必須下載其他東西,告訴模塊在哪裏可以找到靜態文件等。

此外,我想確保它可以包含在兩個簡單的應用程序(即一步來自標準的「hello world」)以及使用Express等框架的複雜應用程序,而沒有不必要的麻煩。

這是可能的,還是超出了模塊系統設計的範圍?

+1

NPM不關心你的包中想要什麼樣的文件。製作二進制文件以將資產移入到位。 – generalhenry

+0

好的,我可以將它們包含在包中,但是如何在運行時找到它們?就像我想用node-static模塊或我自己的代碼來提供它們一樣,我該如何找到它們? – rob

回答

2

一旦你的包在安裝了npm install mypackage -g您可以使用__dirname您的可執行文件裏面找到它在運行的目錄。

可能的/usr/local/lib/node_modules/mypackage/bin/mypackage

隨着你的資產在/usr/local/lib/node_modules/mypackage/assets

所以__dirname + '../assets' + myasset應該正確地找到你的資產

+0

甜,那會做的伎倆,謝謝! – rob