如果您是 Node.js的新手,本指南將協助您掌握一些基本內容。
先決條件
- 在 Windows 上或在 適用於 Linux 的 Windows 子系統 上安裝 Node.js
試試在 Visual Studio Code 中使用 NodeJS
如果您尚未安裝 Visual Studio Code,請返回上述必要條件一節,並遵循連結至 Windows 或 WSL 的安裝步驟。
開啟命令列並建立新的目錄:
mkdir HelloNode
,然後輸入目錄:cd HelloNode
使用 命令在 VS Code 中開啟目錄:
code .
建立名為 「app.js」 的檔案
將簡單的字串 「Hello World」 新增至名為
msg
的變數,然後在 「app.js」 檔案中輸入下列內容,將字串的內容傳送至主控台:var msg = 'Hello World'; console.log(msg);
若要使用 Node.js執行「app.js」檔案。 選取 [檢視>終端機],以在 VS Code 中直接開啟您的終端機(或使用倒引號字元選取 Ctrl+')。 如果您需要變更預設終端機,請選擇下拉功能表,然後選擇 選取預設 Shell。
在終端機中,輸入:
node app.js
。 您應該會看到輸出:「Hello World」。
備註
請注意,當您在 'app.js' 檔案中輸入 console
時,VS Code 會顯示與對象相關的 console
支援選項,讓您選擇使用 IntelliSense。 嘗試使用其他 JavaScript 物件來實驗 Intellisense。
使用 Express 建立您的第一個 NodeJS Web 應用程式
Express 是最小、彈性且簡化的 Node.js 架構,可讓您更輕鬆地開發 Web 應用程式來處理多種類型的要求,例如 GET、PUT、POST 和 DELETE。 Express 隨附應用程式產生器,其會自動為您的應用程式建立檔案架構。
若要使用 Express.js建立專案:
開啟命令行(命令提示字元、Powershell 或您偏好的任何內容)。
建立新的項目資料夾:
mkdir ExpressProjects
並輸入該目錄:cd ExpressProjects
使用 Express 建立 HelloWorld 專案範本:
npx express-generator HelloWorld --view=pug
備註
我們在這裡使用
npx
命令來執行 Express.js Node 套件,無需真正安裝它(或者可以說是暫時安裝它)。 如果您嘗試使用express
命令,或使用express --version
檢查已安裝的 Express 版本,您會收到找不到 Express 的回應。 如果您想要全域安裝 Express 以反覆使用,請使用:npm install -g express-generator
。 您可以使用npm list
指令來檢視 npm 已安裝的套件清單。 它們會依深度列出(深層巢狀目錄的數目)。 您安裝的套件深度為 0。 該套件的相依性位於深度 1,進一步的相依性位於深度 2,以此類推。 若要深入瞭解,請參閱 StackOverflow 上的 npx 與 npm 之間的差異。在 VS Code 中開啟專案以檢查 Express 所包含的檔案和資料夾:
code .
Express 產生的檔案會建立 Web 應用程式,該 Web 應用程式會使用一開始看起來有點壓倒性的架構。 您會在 VS Code Explorer 視窗中看到 [Ctrl+Shift+E] 中,已產生下列檔案和資料夾:
-
bin
。 包含啟動應用程式的可執行檔。 它會啟動伺服器(如果未提供替代選項,則會在埠 3000 上啟動),並設定基本錯誤處理。 -
public
。 包含所有公開存取的檔案,包括 JavaScript 檔案、CSS 樣式表單、字型檔案、影像,以及人員連線至您的網站時所需的任何其他資產。 -
routes
。 包含應用程式的所有路由處理程式。 此資料夾中會自動產生兩個檔案index.js
和users.js
,以作為如何分隔應用程式路由設定的範例。 -
views
。 包含範本引擎所使用的檔案。 呼叫轉譯方法時,Express 會設定為在這裡尋找相符的檢視。 默認範本引擎為 Jade,但 Jade 已被取代為 Pug,因此我們使用--view
旗標來變更檢視(範本)引擎。 您可以使用--view
來查看express --help
標誌選項和其他選項。 -
app.js
。 應用程式的起點。 它會載入所有內容,並開始處理使用者要求。 基本上,它就像是把所有部分黏合在一起的膠水。 -
package.json
。 包含專案描述、文稿管理員和應用程式指令清單。 其主要目的是追蹤應用程式的相依性及其各自的版本。
-
您現在必須安裝 Express 所使用的相依性,才能建置和執行 HelloWorld Express 應用程式(用於執行伺服器等工作的套件,如檔案中所
package.json
定義)。 在 VS Code 中,選取 [ 檢視>終端機 ] 來開啟終端機(或使用倒引號字元選取 Ctrl+'),確定您仍在 'HelloWorld' 專案目錄中。 使用以下指令來安裝 Express 套件的相依性:npm install
此時,您已為可存取各種 API 和 HTTP 公用程式方法和中間件的多頁 Web 應用程式設定架構,讓您更輕鬆地建立健全的 API。 在虛擬伺服器上輸入以下命令以啟動 Express 應用程式:
npx cross-env DEBUG=HelloWorld:* npm start
小提示
上述
DEBUG=myapp:*
命令的一部分表示您告訴 Node.js 您想要開啟記錄以進行偵錯。 請記得以您的應用程式名稱取代 『myapp』。 您可以在檔案的package.json
「name」 屬性下找到您的應用程式名稱。 使用npx cross-env
會在DEBUG
任何終端機中設定環境變數,但您也可以使用終端機的特定方式加以設定。npm start
命令會告訴 npm 在您的package.json
檔案中執行腳本。您現在可以通過開啟網頁瀏覽器查看正在運行的應用程式,並前往:localhost:3000
現在您的 HelloWorld Express 應用程式已在瀏覽器中本機執行,請嘗試在專案目錄中開啟 'views' 資料夾,然後選取 'index.pug' 檔案來嘗試進行變更。 開啟之後,將
h1= title
變更為h1= "Hello World!"
,然後選取 儲存 (Ctrl+S)。 在您的網路瀏覽器中重新整理 localhost:3000 URL,以檢視您的變更。若要停止執行 Express 應用程式,請在終端機中輸入: Ctrl+C
嘗試使用 Node.js 模組
Node.js 有工具可協助您開發伺服器端 Web 應用程式、一些內建應用程式,以及透過 npm 提供更多功能。 這些模組可協助處理許多工作:
工具 | 用於 |
---|---|
gm,銳利 | 圖像操作,包括在 JavaScript 程式碼中直接進行編輯、調整大小、壓縮等等 |
PDFKit | PDF 產生 |
validator.js | 字串驗證 |
imagemin、UglifyJS2 | 壓縮化 |
spritesmith | Sprite圖集生成 |
溫斯頓 | 森林伐木業 |
commander.js | 建立命令行應用程式 |
讓我們使用內建 OS 模組來取得電腦作系統的一些相關信息:
在您的命令行中,開啟 Node.js CLI。 在輸入下列項目之後,您會看到
>
提示,讓您知道您正在使用 Node.js:node
若要識別您目前使用的作系統(應該傳回回應,讓您知道您在 Windows 上),請輸入:
os.platform()
若要檢查 CPU 的架構,請輸入:
os.arch()
若要檢視系統上可用的 CPU,請輸入:
os.cpus()
輸入
.exit
或按兩次 Ctrl+C 以離開 Node.js CLI。小提示
您可以使用 Node.js OS 模組來執行類似檢查平臺並傳回平臺特定變數等動作:適用於 Windows 開發的 Win32/.bat、Mac/unix、Linux、SunOS 等的 darwin/.sh (例如,
var isWin = process.platform === "win32";
)。