iT邦幫忙

DAY 5
0

Node.js 學習筆記系列 第 5

Node.js學習筆記四:Express.js的安裝使用

  • 分享至 

  • xImage
  •  

Express.js是Node.js最受歡迎的Web開發框架,能大大地加快Node.js的網站開發速度。我們可以透過以下指令安裝Express.js:npm install -g express-generator

-g: 代表global,也就是所有的projects都能使用Express.js

express-generator: 新版本的Express.js要求安裝express-generator,才能自動生成新project。

安裝後就能使用”express”指令,來自動生成一個新project的結構與檔案,例如執行:express testproject。會出現以下的訊息:

create : testproject

create : testproject/package.json

create : testproject/app.js

create : testproject/public

create : testproject/public/stylesheets

create : testproject/public/stylesheets/style.css

create : testproject/routes

create : testproject/routes/index.js

create : testproject/routes/users.js

create : testproject/public/images

create : testproject/views

create : testproject/views/index.jade

create : testproject/views/layout.jade

create : testproject/views/error.jade

create : testproject/bin

create : testproject/bin/www

create : testproject/public/javascripts

install dependencies:

$ cd testproject && npm install

run the app:

$ DEBUG=testproject ./bin/www

代表著以上顯示的這些檔案夾及檔案已被建立。然後你可以根據自己的需要修改或增刪。

注意倒數第四行提示我們要安裝關連模組(dependencies),只要運行它給的指令即可:

cd testproject && npm install

結果顯示如下:

serve-favicon@2.0.1 node_modules\serve-favicon

└── fresh@0.2.2

cookie-parser@1.3.2 node_modules\cookie-parser

├── cookie@0.1.2

└── cookie-signature@1.0.4

debug@1.0.4 node_modules\debug

└── ms@0.6.2

morgan@1.2.3 node_modules\morgan

├── basic-auth@1.0.0

├── bytes@1.0.0

├── depd@0.4.4

└── on-finished@2.1.0 (ee-first@1.0.5)

body-parser@1.6.7 node_modules\body-parser

├── bytes@1.0.0

├── media-typer@0.2.0

├── raw-body@1.3.0

├── depd@0.4.4

├── qs@2.2.2

├── on-finished@2.1.0 (ee-first@1.0.5)

├── type-is@1.3.2 (mime-types@1.0.2)

└── iconv-lite@0.4.4

express@4.8.7 node_modules\express

├── cookie@0.1.2

├── utils-merge@1.0.0

├── merge-descriptors@0.0.2

├── cookie-signature@1.0.4

├── escape-html@1.0.1

├── fresh@0.2.2

├── media-typer@0.2.0

├── finalhandler@0.1.0

├── range-parser@1.0.0

├── vary@0.1.0

├── parseurl@1.3.0

├── methods@1.1.0

├── serve-static@1.5.3

├── buffer-crc32@0.2.3

├── depd@0.4.4

├── path-to-regexp@0.1.3

├── qs@2.2.2

├── type-is@1.3.2 (mime-types@1.0.2)

├── proxy-addr@1.0.1 (ipaddr.js@0.1.2)

├── accepts@1.0.7 (negotiator@0.4.7, mime-types@1.0.2)

└── send@0.8.3 (destroy@1.0.3, ms@0.6.2, on-finished@2.1.0, mime@1.2.11)

jade@1.5.0 node_modules\jade

├── character-parser@1.2.0

├── commander@2.1.0

├── mkdirp@0.5.0 (minimist@0.0.8)

├── monocle@1.1.51 (readdirp@0.2.5)

├── transformers@2.1.0 (promise@2.0.0, css@1.0.8, uglify-js@2.2.5)

├── with@3.0.1 (uglify-js@2.4.15)

└── constantinople@2.0.1 (uglify-js@2.4.15)

正如以上顯示,這個指令會建立一個新的檔案夾:node_modules,並會將所需要的關連模組,包括Express.js本身,安裝到裡面。

其中最後的Jade模組是Express.js預設的模版引擎(Template Engine)。Jade最大的特點是語法非常的簡洁,這是優點同時也是缺點。因為學習曲線較陡(跟HTML差挺多的),而且難以與其他人(像只懂HTML的設計人員)溝通。所以很多人喜歡把Jade換成更接近HTML的模版引擎,其中目前最受推崇應數:Handlebar.jsHogan.js。兩者都是基於Mustache,所以語法很相似。Handlebar.js被很多大項目採用,像Ghost,功能比Hogan.js要豐富。而Hogan.js則比較新,由Twitter開發,追求速度(比Handlebar.js稍快),已獲得不少的關注與使用。這兩者都是很好的選擇,我個人傾向Hogan.js。如果你要用Hogan.js來取代Jade可使用以下指令來建立新項目:

express testproject -hogan

另外Express.js也支持LESS跟Stylus兩種CSS預編繹語言(Preprocessor),你想要使用LESS的話,可以用:

express testproject --hogan -c less

-c 就是CSS的意思。

Image Credit: Aleksi Tappura


上一篇
Node.js學習筆記三:Blocking與Non-blocking的思考
下一篇
Node.js學習筆記五:nodemon的安裝與使用
系列文
Node.js 學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言