全端勇士之路 Node.js 基礎學習-模組化開發
前言
接下來這邊將會來記錄一下 Node.js 的模組化開發,首先我們必須先認識到幾個語法。
require、module.exports
首先我們先來替專案建立兩個檔案,分別為 a.js 以及 b.js
a.js 內容
1 | console.log('HelloWorld'); |
b.js 內容
1 | var myName = 'Ray'; |
一般來講這時候執行一定會得到一個錯誤
原因是因為在 a.js
中並沒有這個變數,因為他目前在 b.js
中,所以我們就可以使用 require
的方法將 b.js 引入
a.js 內容
1 | var b = require('./b'); |
但是你會得到 undefined
,那是因為 Node.js 並不知道你要模組化那些變數、函數,所以 b.js 內容就要修改一下哩
1 | var myName = 'Ray'; |
這時候在執行一下 node a.js
,就可以發現正常引入了
那你可能會想說,可是如果我有多個變數與函數又想要傳入函數計算呢呢?我們可以這樣寫
b.js 內容
1 | var myName = 'Ray'; |
接下來 a.js 這邊內容就有點稍微不同哩
1 | var b = require('./b'); |
你會發現我改用了點運算子,因為模組化過來的都是一個物件,所以我們透過點運算子來取得模組化的東西,這邊我們就可以在執行一次 node a.js
試試看
所以我們 module.exports
就可以這樣玩~
1 | var myName = 'Ray'; |
那 a.js 一樣就可以這樣取得
1 | var b = require('./b'); |
補充
先前我都會疑惑 export default
與 module.exports
有何差異,這邊順便記錄一下
- export default 是 ES6 專用
- module.exports 則是 Node.js 專用,若需要撰寫 Node.js 後端就要使用此語法~