快速搭建一個Express工程骨架

一、前期準備

學習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>
發佈了40 篇原創文章 · 獲贊 87 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章