MEAN Web開發是一本圖書,作者是 [以色列] 哈維夫 ( Amos Q. Haviv )。
基本介紹
- 書名:MEAN Web開發
- ISBN:978-7-115-39663-1
- 出版社:人民郵電出版社
- 出版時間:2015-08
圖書簡介,目錄,
圖書簡介
本書從MEAN 的核心框架開始,詳細闡述了每一種框架的關鍵概念,如何正確地設定它們,以及如何用流行的模組把它們連線在一起。通過本書的實例練習,你能搭建自己的MEAN 套用架構,通過添加認證層,開發MVC 架構支持自己的項目開發。最後,你將學會使用不同的工具和框架加快你的日常開發進程。
目錄
第 1 章 MEAN 簡介 1
1.1 三層Web 套用開發 1
1.2 JavaScript 的演進 2
1.3 MEAN 簡介 3
1.4 安裝MongoDB 4
1.4.1 在Windows 上安裝MongoDB 5
1.4.2 在Mac OS X 和Linux 上安裝MongoDB 7
1.4.3 使用MongoDB 命令行工具 8
1.5 安裝Node.js 9
1.5.1 在Windows 上安裝Node.js 10
1.5.2 在Mac OS X 上安裝Node.js 11
1.5.3 在Linux 上安裝Node.js 12
1.5.4 運行Node.js 12
1.6 NPM 簡介 13
1.7 總結 18
第 2 章 Node.js 入門 19
2.1 Node.js 簡介 19
2.1.1 JavaScript 事件驅動編程 20
2.1.2 Node.js 事件驅動編程 22
2.2 JavaScript 閉包 23
2.3 Node 模組 24
2.3.1 CommonJS 模組 24
2.3.2 Node.js 核心模組 26
2.3.3 Node.js 第三方模組 26
2.3.4 Node.js 檔案模組 26
2.3.5 Node.js 資料夾模組 27
2.4 Node.js Web 套用開發 27
2.5 總結 34
第3 章 使用Express 開發Web 套用 35
3.1 Express 簡介 35
3.2 Express 安裝 36
3.3 創建第 一個Express 套用 36
3.4 套用、請求和回響對象 37
3.4.1 套用對象 37
3.4.2 請求對象 38
3.4.3 回響對象 38
3.5 外部的中間件 39
3.6 實現MVC 模式 40
3.7 Express 套用配置 48
3.8 渲染視圖 51
3.8.1 配置視圖系統 51
3.8.2 EJS 視圖渲染 53
3.9 靜態檔案服務 53
3.10 配置會話 55
3.11 總結 57
第4 章 MongoDB 入門 58
4.1 NoSQL 簡介58
4.2 MongoDB 簡介 60
4.3 MongoDB 的關鍵特性 61
4.3.1 BSON 格式 61
4.3.2 MongoDB 即席查詢 61
4.3.3 MongoDB 索引 62
4.3.4 MongoDB 副本集 63
4.3.5 MongoDB 分片 64
4.4 MongoDB 命令行工具 65
4.5 MongoDB 資料庫 66
4.6 MongoDB 集合 66
4.7 MongoDB 增刪改查操作 67
4.7.1 創建新文檔 67
4.7.2 讀取文檔 68
4.7.3 更新已有文檔 69
4.7.4 刪除文檔 70
4.8 總結 71
第5 章 Mongoose 入門 72
5.1 Mongoose 簡介 72
5.1.1 安裝Mongoose 72
5.1.2 連線MongoDB 73
5.2 理解Mongoose 的模式 74
5.2.1 創建User 模式與模型 74
5.2.2 註冊USer 模型 75
5.2.3 使用save()創建新文檔 75
5.2.4 使用find()查找多個文檔 77
5.2.5 使用findOne()讀取單個文檔 79
5.2.6 更新已有文檔 80
5.2.7 刪除已有文檔 81
5.3 擴展Mongoose 模式 82
5.3.1 定義默認值 82
5.3.2 使用模式修飾符 83
5.3.3 增加虛擬屬性 85
5.3.4 使用索引最佳化查詢 85
5.4 模型方法自定義 86
5.4.1 自定義靜態方法 86
5.4.2 自定義實例方法 87
5.5 模型的校驗 87
5.5.1 預定義的驗證器 87
5.5.2 自定義的驗證器 89
5.6 使用Mongoose 中間件 89
5.6.1 預處理中間件 89
5.6.2 後置處理中間件 90
5.7 使用Mongoose DBRef 90
5.8 總結 91
第6 章 使用Passport 模組管理用戶許可權 92
6.1 Passport 簡介 92
6.1.1 安裝 92
6.1.2 配置 93
6.2 理解Passport 策略 95
6.2.1 使用Passport 的本地策略 95
6.2.2 修改User 模型 97
6.2.3 創建身份驗證視圖 99
6.2.4 修改用戶控制器 101
6.2.5 添加用戶路由 105
6.3 理解Passport 的OAuth 策略 107
6.4 總結 118
第7 章 AngularJS 入門 119
7.1 AngularJS 簡介 119
7.2 AngularJS 的核心概念 119
7.2.1 核心模組 120
7.2.2 模組 120
7.2.3 雙向數據綁定 121
7.2.4 依賴注入 122
7.2.5 AngularJS 指令 123
7.2.6 AngularJS 套用的引導 124
7.3 安裝AngularJS 125
7.3.1 Bower 包管理器 125
7.3.2 配置Bower 126
7.3.3 使用Bower 安裝AngularJS 126
7.3.4 配置AngularJS 127
7.4 AngularJS 套用的結構 127
7.5 引導AngularJS 套用 130
7.6 AngularJS 的MVC 實體 131
7.6.1 視圖 132
7.6.2 控制器和scope 133
7.7 AngularJS 路由 135
7.7.1 安裝ngRoute 模組 136
7.7.2 配置URL 模式 137
7.7.3 AngularJS 套用路由 137
7.8 AngularJS 服務 139
7.8.1 預置服務 139
7.8.2 自定義服務 140
7.8.3 服務的使用 141
7.9 管理AngularJS 的身份驗證 141
7.9.1 將user 對象填充到視圖 141
7.9.2 添加身份驗證服務 142
7.9.3 使用身份驗證服務 144
7.10 總結 144
第8 章 創建MEAN 的CURD 模組 145
8.1 CURD 模組簡介 145
8.2 配置Express 組件 145
8.2.1 創建Mongoose 模型146
8.2.2 建立Express 控制器 147
8.2.3 編寫Express 路由 152
8.2.4 配置Express 套用 153
8.3 ngResource 模組簡介 154
8.3.1 安裝ngResource 模組 154
8.3.2 使用$resource 服務 156
8.4 實現AngularJS 的MVC 模組 157
8.4.1 創建模組服務 157
8.4.2 建立模組控制器 158
8.4.3 實現模組視圖 161
8.4.4 編寫AngularJS 路由 164
8.5 **終實現 164
8.6 總結 166
第9 章 基於Socket.io 的實時通信 167
9.1 WebSockets 簡介 167
9.2 Socket.io 簡介 168
9.2.1 Socket.io 伺服器端對象 169
9.2.2 Socket.io 客戶端對象 171
9.2.3 Socket.io 的事件 171
9.2.4 Socket.io 命名空間 174
9.2.5 Socket.io 的房間 175
9.3 Socket.io 的安裝 176
9.3.1 配置Socket.io 的伺服器 177
9.3.2 配置Socket.io 的會話 178
9.4 使用Socket.io 創建聊天室 182
9.4.1 設定聊天伺服器的事件處理程式 182
9.4.2 在AngularJS 中創建Socket服務 184
9.4.3 控制器 185
9.4.4 視圖 186
9.4.5 路由 186
9.4.6 實現 187
9.5 總結 189
第 10 章 MEAN 套用的測試 190
10.1 JavaScript 測試簡介 190
10.1.1 TDD、BDD 和單元測試 191
10.1.2 測試框架 192
10.1.3 斷言庫 192
10.1.4 測試執行過程管理工具 192
10.2 Express 套用測試 193
10.2.1 Mocha 簡介 193
10.2.2 Should.js 簡介 194
10.2.3 SuperTest 簡介 194
10.2.4