天天看點

在Visual Studio上開發Node.js程式

【題外話】

最近準備用Node.js做些東西,于是找找看能否有Visual Studio上的插件以友善開發。結果還真找到了一個,來自微軟的Node.js Tools for Visual Studio(NTVS),雖然現在僅釋出了1.0 Alpha版本,但使用起來已經非常友善。而且,其開發團隊與Python Tools for Visual Studio(PTVS)是同一個,而PTVS就是Visual Studio 2013中要建立自帶的Python項目需要安裝的那個程式,是以大可放心的使用NTVS。

【系列索引】

<a href="http://www.cnblogs.com/mayswind/p/3547413.html" target="_blank">在Visual Studio上開發Node.js程式——NTVS介紹及使用</a>

<a href="http://www.cnblogs.com/mayswind/p/3549891.html" target="_blank">在Visual Studio上開發Node.js程式(2)——NTVS遠端調試及釋出到Azure</a>

【文章索引】

<a href="#para1">NTVS介紹與安裝</a>

<a href="#para2">NTVS項目建立和使用</a>

<a href="#para3">NTVS項目的調試</a>

<a href="#para4">NTVS項目的包管理</a>

總之,該有的都有了。如果要安裝NTVS的話,需要VS 2013或2012 Update4的Professional(或Test Professional)、Premium或Ultimate版本,同時需要安裝有Node.js的0.10.20或以上的版本,有了這些準備後,就可以去官網下載下傳安裝包進行安裝了,需要注意的是,VS 2013和2012的安裝包是各自獨立的。

安裝完成後,就會在Visual Studio的JavaScript類型中多出以下的項目類型:

在Visual Studio上開發Node.js程式

對于Node.js而言,項目類型并不像.NET項目有這麼多不同的類型,每種之間的開發環境等還有差異。對于上面的Blank Node.js Console Application和Web Application兩個項目而言,無非就是前者模闆的代碼隻提供了在控制台輸出Hello World的代碼;而後者則用Node.js建立了一個Http伺服器,并為每個請求都輸出Hello World罷了,即實作了一個簡單的Web應用程式。而Express Application則是使用Node.js上的Express架構+Jade模闆引擎+Stylus實作了一個小的Web應用程式。而剩下的第一個項目則是從已有的Node.js項目中建立,後兩個與其他的類似,隻不過已經配置好了腳本和配置檔案等可以直接部署到Windows Azure中。

項目建立後與Visual Studio的C#等項目沒有太大差別,Intellisense功能也非常強大,敲入require的時候會提示所有的子產品名稱,同時選擇每個子產品的時候會提示這個子產品的作用和說明(如下圖),然後鍵入回車可以直接補齊單引号等等,都非常友善。而對于每個子產品,其所有方法和成員變量也都能自動顯示出來,隻不過不像require那樣會顯示說明資訊。

在Visual Studio上開發Node.js程式

NTVS項目調試的方式與C#一樣,都是F5運作并調試和Ctrl+F5隻運作不調試,其會自動運作已安裝的Node程式執行目前項目的代碼。對于Web Application項目并且使用了使用了http子產品的話,還會自動打開浏覽器通路指定的端口(可以在項目屬性中關閉)。需要說明的是,對于Node.js項目,有且僅有一個啟動檔案(即使用node.exe執行的檔案,相當于程式的Main()函數),程式從這個檔案的開始執行,預設情況下項目建立後第一個建立的js檔案為啟動檔案,啟動檔案用粗體表示。如果需要設定其他檔案為啟動檔案,右鍵單擊選擇設定就可以了(如下圖) 。

在Visual Studio上開發Node.js程式

在調試過程中,與其他項目一樣,都可以設定斷點、單步執行以及監視什麼的都是可以用的,同時如果在程式代碼中抛出了異常,在調試過程中也會提示出來(如下圖)。

在Visual Studio上開發Node.js程式

預設情況下,所有異常都将提示,當然也可以自己選擇哪些異常不提示。可以在提示了異常之後選擇“打開異常設定”,或者選擇“調試”菜單,選擇“異常”,如下圖:

在Visual Studio上開發Node.js程式

NTVS還提供了非常友善的包管理方式,就如同在C#項目中添加引用一樣友善的添加其他包。當然也可以自己使用npm安裝相應的包,然後在項目中使用,雖然調試運作沒有問題,不過這樣是沒有Intellisense提示的。是以,如果項目中需要其他的包,可以右鍵單擊npm,選擇“Manage npm Modules...”(如下圖),在npm包管理器中右側的包名稱中輸入包的名稱,然後點選下方的本地安裝(為目前項目安裝)就可以了,完成後會在左側出現已安裝的包,然後在項目中require也會出現相應的包名,在使用包的時候也會有方法成員的提示等等。

在Visual Studio上開發Node.js程式

安裝完包後就會在解決方案管理器的npm下出現相應的包名,與C#項目添加引用類似。同時,與執行npm ls指令一樣,也是可以檢視包的依賴關系的(如下圖)。

在Visual Studio上開發Node.js程式

【相關連結】