# Express 中使用模板引擎
基于 JavaScript 的模板引擎有許多種實現,我們推薦使用 ejs(Embedded JavaScript),因為它十分簡單,而且與 Express 集成良好。由于它是標準 JavaScript 實現的,因此它不僅可以運行在服務器端,還可以運行在瀏覽器中。
## 使用 ejs
```
安裝包 npm install ejs。
```
```
<% books.forEach((book) => { %>
<%- book %>
<%})%>
```
```
var express = require('express')
var path = require('path')
var app = express() // 創建應用
// 全局設置, 減少代碼
// 項目使用模板技術哪個
app.set('view engine', 'ejs');
// 項目存放模板文件目錄在哪里
app.set('views', path.join(__dirname, 'views'));
app.get('/a', function (req, res) {
let data = {books: ['西游記', '三國演義', '水滸傳', '紅樓夢']};
res.render('book', data); // 當前目錄中 views 找 book.ejs
// express 支持很多模板技術, 因為不同模板技術的 api 不一樣, 統一封裝了下
// 根據全局設置, 存在 大量判斷 if 當前模板技術 ejs ejs.renderFile
});
app.get('/b', function (req, res) {
let data = {books: ['JS 入門', 'JS 高級', 'JS 禪道', '頸椎康復指南']};
res.render('book', data); // 當前目錄中 views 找 book.ejs
// express 支持很多模板技術, 因為不同模板技術的 api 不一樣, 統一封裝了下
// 根據全局設置, 存在 大量判斷 if 當前模板技術 ejs ejs.renderFile
});
// 啟動應用綁定端口
app.listen(9999, () => console.log('啟動成功'));
```
1.模板文件(ejs)
2.項目使用模板技術是那個
3.模板文件(ejs)目錄在那里
4.res.render(‘book,’ data)
- NodeJs
- 01-萬維網
- 02-CS 架構 VS BS 架構
- 03-Web 服務器訪問流程
- 04-url
- 05-網絡傳輸協議
- 06-HTTP 協議
- 07-報文
- 08-命令行界面
- 09-什么是 Node.js
- 10-環境安裝及配置
- 11-JavaScript 代碼運行環境
- 12-全局對象
- 13-Buffer
- 14-模塊化
- 15-EventEmitter
- 16-path模塊
- 17-流式操作
- 18-包
- 19-模板技術
- 20-ejs入門
- 21-express
- 01-什么是express
- 02-Hellow Express
- 03-靜態資源服務
- 04-路由
- 05-模塊化路由處理程序
- 06-中間件
- 07-手動實現中間件
- 08-常用內置中間件和第三方中間件
- 09-響應
- 10-獲取請求參數
- 11-Express 中使用模板引擎
- 22-web存儲與安全
- 01-cookie
- 02-sessionStorage
- 03-localStorage
- 04-base64
- 05-https
- 06-同源策略