一、前期準備
學習Express的基礎知識,可以看看中文文檔
二、創建項目骨架
1.下載express-generator
通過應用生成器,可以幫我們快速搭建項目需要的骨架。這就需要npm在全局下載express-generator(-g就是在全局安裝)
$ npm install express-generator -g
2.使用生成器創建項目
在一個文件夾下面創建一個叫做“FirstApp”的工程,使用的模板爲ejs,默認是jade。
E:\node>express FirstApp -e
我們可以發現在目錄中已經創建好了FirstApp文件夾,項目的結構如下
打開package.json這裏寫的是項目的相關信息,比如項目名稱、版本、依賴項等。
{
"name": "FirstApp",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"body-parser": "~1.15.1",
"cookie-parser": "~1.4.3",
"debug": "~2.2.0",
"ejs": "~2.4.1",
"express": "~4.13.4",
"morgan": "~1.7.0",
"serve-favicon": "~2.3.0"
}
}
下載項目的依賴項
E:\node\FirstApp>npm install
然後你就會在FirstApp目錄下會多了一個node_modules的文件夾,裏面就是項目所需要依賴的模塊
三、啓動項目
1.啓動服務
使用如下命令,舊版本是node app.js 你可以去package.json文件找到啓動命令
E:\node\FirstApp>node ./bin/www
2.在瀏覽器輸入localhost:3000
我們可以看到Express的歡迎界面
3. 查看代碼
1)打開app.js(項目的入口),我們看看裏面有什麼
通過require把項目的依賴項引入進來
var express = require('express');
設置視圖的路徑,我們把頁面都放在views文件夾下面。視圖的模板引擎是ejs
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
設置公共文件的存放位置,默認把公共文件比如stylesheets、javascript、images等放在public文件夾下面
app.use(express.static(path.join(__dirname, 'public')));
2)打開routers下面的index.js
+》在瀏覽器輸入localhost:3000發送一個get請求,node服務監聽到來自3000端口的請求時就會對這個請求進行處理。它會對地址欄的地址和路由規則進行匹配,如果 匹配成功它就會返回請求的處理,對相應的頁面進行渲染。
+》router.get()方法有兩個參數,第一個是路由規則,第二個是一箇中間件函數,如果路由匹配成功所進行的操作。
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
module.exports = router;
3)打開views下面的index.ejs
+》樣式的引入,這裏直接寫的是下面的,因爲前面已經設置好公共文件的存放位置,即在public下面。它會自動找到public下面對應的文件
<link rel='stylesheet' href='/stylesheets/style.css' />
+》寫過html的童鞋,看ejs頁面一定不會陌生,其實都差不多,就是後綴不一樣,然後ejs可以渲染。渲染一般是下面的形式,當匹配到規則時就會把值傳過來,對頁面進行渲染。
<%= title %>
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<h1><%= title %></h1>
<p>Welcome to <%= title %></p>
</body>
</html>