Node+MongoDB+React 項目實戰開發

《Node+MongoDB+React 項目實戰開發》是中國水利水電出版社出版的圖書,作者是鄒瓊俊。

基本介紹

  • 中文名:Node+MongoDB+React 項目實戰開發 
  • 作者:鄒瓊俊
  • 出版時間:2021年5月1日
  • 出版社:中國水利水電出版社
  • 頁數:384 頁
  • ISBN:9787517095248
  • 類別:Web編程
  • 定價:89 元
  • 開本:16 開
  • 裝幀:平裝
圖書目錄
目錄 1
第 1 章 11
◄ Node.js基礎 ► 11
1.1 Node開發概述 11
1.1.1 為什麼要學習Node.js 11
1.1.2 什麼是Node.js 12
1.1.3 Node.js特點 13
1.1.4 開發工具 13
1.2 Node運行環境搭建 14
1.2.1 Node.js運行環境安裝 14
1.2.2 Node環境安裝失敗解決辦法 16
1.2.3 代碼有無分號的問題 17
1.3 Node.js快速入門 17
1.3.1 Node.js 的組成 17
1.3.2 Node.js基礎語法 18
1.3.3 Node.js全局對象global 18
第 2 章 20
◄ 模組載入及第三方包 ► 20
2.1 Node.js模組化開發 20
2.1.1 JavaScript開發弊端 20
2.1.2 模組化 21
2.1.3 Node.js中模組化開發規範 21
2.1.4 exports 和 module.exports 的區別 24
2.1.5 require優先從快取載入 24
2.2 系統模組 25
2.2.1 什麼是系統模組 25
2.2.2 系統模組fs檔案操作 26
2.2.3 系統模組path 路徑操作 27
2.2.4 相對路徑VS絕對路徑 28
2.3 第三方模組 28
2.3.1 什麼是第三方模組 28
2.3.2 獲取第三方模組 29
2.3.3 第三方模組 nrm 30
2.3.4 第三方模組 nodemon 30
2.3.5 第三方模組 gulp 31
2.3.6 npx 39
2.4 package.json檔案 39
2.4.1 node_modules目錄的問題 39
2.4.2 package.json檔案的作用 40
2.4.3 項目依賴和開發依賴 41
2.4.4 package.json檔案各個選項含義 41
2.4.5 package-lock.json檔案的作用 43
2.5 Node.js中模組的載入機制 43
2.5.1 模組查找規則:當模組擁有路徑但沒有後綴時 44
2.5.2 模組查找規則:當模組沒有路徑且沒有後綴時 44
第 3 章 46
◄ HTTP及Node異步編程 ► 46
3.1 C/S、B/S軟體體系結構分析 46
3.2 伺服器端基礎概念 47
3.2.1 網站的組成 47
3.2.2 網站伺服器 48
3.2.3 IP位址 49
3.2.4 域名 50
3.2.5 連線埠 51
3.2.6 URL 52
3.2.7 客戶端和伺服器端 52
3.3 創建web伺服器 53
3.4 HTTP協定 54
3.4.1 HTTP協定的概念 54
3.4.2 報文 55
3.4.3 請求報文 56
3.4.4 回響報文 61
3.5 HTTP請求與回響處理 63
3.5.1 請求參數 63
3.5.2 GET請求參數 63
3.5.3 POST請求參數 64
3.5.4 路由 65
3.5.5 靜態資源 67
3.5.6 動態資源 67
3.5.7 客戶端請求方式 69
3.6 Node.js異步編程 70
3.6.1 同步API, 異步API 70
3.6.2 同步API, 異步API的區別 70
3.6.3 回調函式 72
3.6.4 Node.js中的異步API 73
3.6.5 Promise 75
3.6.6 異步函式async和await 77
第 4 章 79
◄ MongoDB資料庫 ► 79
4.1 資料庫概述 79
4.1.1 為什麼要使用資料庫 79
4.1.2 什麼是資料庫 79
4.1.3 MongoDB資料庫相關概念 80
4.2 MongoDB資料庫環境搭建 82
4.2.1 MongoDB資料庫下載安裝 82
4.2.2 啟動MongoDB 86
4.3 MongoDB操作 86
4.3.1 MongoDB的Shell操作 86
4.3.2 MongoDB可視化軟體 90
4.3.3 MongoDB導入導出數據 92
4.4 MongoDB索引介紹及資料庫命令操作 94
4.4.1 創建簡單索引 94
4.4.2 索引 96
4.4.3 刪除重複值 96
4.4.4 Hint 96
4.4.5 Expain 97
4.4.6 索引管理 98
4.5 MongoDB備份與恢復 99
4.5.1 MongoDB資料庫備份 99
4.5.2 MongoDB資料庫恢復 100
4.6 Mongoose資料庫連線 101
4.7 Mongoose增刪改查操作 102
4.7.1 創建資料庫 102
4.7.2 創建集合 103
4.7.3 創建文檔 103
4.7.4 查詢文檔 105
4.7.5 刪除文檔 108
4.7.6 更新文檔 109
4.7.7 mongoose驗證 109
4.7.8 集合關聯 111
第 5 章 114
◄ art-template模板引擎 ► 114
5.1 模板引擎的基礎概念 114
5.1.1 模板引擎 114
5.1.2 art-template模板引擎 115
5.2 模板引擎語法 117
5.2.1 輸出 117
5.2.2 原文輸出 117
5.2.3 條件判斷 118
5.2.4 循環 118
5.2.5 子模版 118
5.2.6 模板繼承 118
5.2.7 模板配置 120
5.3 案例-用戶管理 121
5.3.1 案例介紹 121
5.3.1.1 第三方模組 router 122
5.3.1.2 第三方模組 serve-static 123
5.3.2 操作步驟 123
第 6 章 135
◄ Express框架 ► 135
6.1 Express框架簡介 135
6.1.1 Express框架是什麼 135
6.1.2 Express框架特性 135
6.2 中間件 136
6.2.1 什麼是中間件 136
6.2.2 app.use中間件用法 137
6.2.3 中間件套用 138
6.2.4 錯誤處理中間件 139
6.2.5 捕獲異常 141
6.3 Express請求處理 141
6.3.1 構建路由 141
6.3.2 構建模組化路由 142
6.2.3 GET參數的獲取 143
6.2.4 POST參數的獲取 143
6.2.5 Express路由參數 145
6 2.6 靜態資源處理 145
6.4 express-art-template模板引擎 146
6.5 express-session 147
6.5.1 Session 簡單介紹 147
6.5.2 express-session 的使用 147
6.5.3 express-session 的常用參數 148
第 7 章 149
◄ 文章管理系統 ► 149
7.1 項目環境搭建 149
7.1.1 項目介紹 149
7.1.2 項目框架搭建 150
7.2 項目功能實現 157
7.2.1 登錄 158
7.2.1.1 創建登錄頁面 158
7.2.1.2 登錄控制路由 161
7.2.1.3 創建用戶集合,初始化用戶 162
7.2.1.4 實現登錄控制器代碼 168
7.2.2 文章管理 173
7.2.2.1 文章列表頁 173
7.2.2.2 新增新增/編輯 178
7.2.3 用戶管理 186
7.2.4 網站首頁文章展示 191
7.2.5 文章評論 191
7.2.6 訪問許可權控制 192
7.3 項目源碼和運行 193
7.4 Windows上部署Node套用 194
第 8 章 197
◄ React基礎知識 ► 197
8.1 React介紹 197
8.1.1 React介紹 197
8.1.2 前端三大主流框架 198
8.1.3 React與vue的對比 198
8.1.4 為什麼要學習React 199
8.1.5 React中幾個核心的概念 199
8.1.6 Diff算法 202
8.2 創建基本的webpack4.x項目 203
8.2.1 使用webpack-dev-server 205
8.2.2 在項目中使用 react 207
8.2.3 JSX 209
8.3 React中創建組件 212
8.3.1 React Developer Tools 調試工具 213
8.3.2 構造函式創建組件 213
8.3.3 class關鍵字來創建組件 215
8.3.4 兩種創建組件方式的對比 216
8.4 設定樣式 217
8.4.1 組件中使用style行內樣式 217
8.4.2 組件中使用css外部樣式 218
8.4.3 使用css樣式衝突 219
8.4.4 css樣式通過modules參數啟用模組化 220
8.5 在項目中啟用模組化並同時使用bootstrap 223
8.6 在react中綁定事件 224
8.7 綁定文本框與state中的值 226
8.8 React組件生命周期 230
8.9 表單 235
8.9.1 表單受控組件 235
8.9.2 非受控組件 236
8.9.3 組件組合 238
8.9.4 使用 PropTypes 進行類型檢查 238
第 9 章 240
◄ React進階 ► 240
9.1 antd UI組件庫 240
9.1.1 antd UI組件庫引入 240
9.1.2 按需載入 242
9.1.2.1 方式一:eject暴露配置 242
9.1.2.2 方式二:react-app-rewired 243
9.2 Fetch 網路請求 244
9.2.1 get請求和post請求 244
9.2.2 跨域 249
9.2.3 封裝http請求 250
9.3 axios 網路請求 251
9.4 路由 254
9.4.1 路由介紹 254
9.4.2 <BrowserRouter>與<HashRouter> 256
9.4.3 <Link> 256
9.4.4 <Switch>和404頁面 258
9.4.5 render和func 259
9.4.6 <NavLink>高亮 261
9.4.7 URL Parameters 262
9.4.8 query string讀取方式 262
9.4.9 <NavLink> to object 264
9.4.10 <Redirect>重定向 264
9.4.11 push和replace 265
9.4.12 withRouter 265
9.4.13 Prompt 266
9.4.14 路由嵌套 267
9.5 React-Redux基礎知識 268
9.5.1 父子組件數據傳遞 269
9.5.2 引入Redux 270
9.5.3 引入React-Redux與mapStateToProps讀取數據 274
9.5.4 dispatch與mapDispatchToProps修改數據 278
9.5.5 bindActionCreators與參數傳遞 279
9.5.6 combineReducers合併reducer 281
9.5.7 Redux Middleware(中間件) 283
9.5.8 異步中間件redux-thunk 285
9.5.9 異步中間件redux-saga 289
9.5.10 Redux調試工具Redux DevTools 292
9.6 高階組件 293
9.7 React.Fragment 296
9.8 React Context 298
9.8.1 老版本的context 298
9.8.2 新版本的context 299
第 10 章 302
◄ 後台管理系統 ► 302
10.1 項目介紹 302
10.1.1 項目介紹 302
10.1.2 技術選型 302
10.1.3 準備工作 302
10.1.4 yarn和npm的區別 303
10.2 項目搭建 304
10.2.1 基礎目錄結構構建 304
10.2.2 配置redux 307
10.2.3 準備路由環境 308
10.2.4 搭建主界面 308
10.2.5 構建一級路由 312
10.2.6 構建系統後台首頁 313
10.2.7 配置用戶界面 317
10.2.8 配置課程管理界面 320
10.3 伺服器搭建 322
10.3.1 創建node web 接口伺服器 322
10.3.2 資料庫初始化 324
10.3.3 啟動web伺服器 325
10.3.4 接口測試 325
10.4 後台首頁數據獲取和展示 325
10.4.1 封裝接口請求 325
10.4.2 配置代理 329
10.4.3 配置store 329
10.4.4 主界面接口數據綁定 330
10.5 選單摺疊和展開 333
10.5.1 配置JieHeader.jsx 333
10.5.2 配置JieSider.jsx 336
10.6 用戶管理 337
10.6.1 用戶列表 337
10.6.2 刪除用戶 345
10.6.3 新增/編輯用戶 347
第 11 章 356
◄ React擴展 ► 356
11.1 React 新特性 356
11.1.1 State Hook 356
11.1.2 Effect Hook 357
11.1.3 useReducer 359
11.2 dva 360
11.2.1 dva介紹與環境搭建 360
11.2.2 dva中引入antd 362
11.2.3 dva路由配置 363
11.2.4 編寫 UI Component 364
11.2.5 dva model創建 365
11.2.6 dva路由跳轉 368
11.2.7 Model異步請求 369
11.2.8 Mock數據 370
11.2.9 dva中的網路請求 374
11.2.10 dva Model subscriptions 375
11.2.11 redux-actions 376
11.3 UmiJS 377
11.3.1 UmiJS介紹 377
11.3.2 UmiJS快速上手 378
11.3.3 通過腳手架創建項目 381
11.3.4 路由約定與配置 385
11.3.5 外掛程式@umijs/plugin-dva 388
11.3.6 配置之動態載入 391
11.4 TypeScript 395
10.4.1 TypeScript簡介 395
10.4.2 TypeScript和Node開發示例 395
11.5 可能遇到的問題及解決方案 403
11.5.1 Joi.validate is not a function 403
11.5.2 react項目在谷歌瀏覽器中訪問顯示空白 403
11.5.3‘roadhog’不是內部或外部命令,也不是可運行的程式或批處理檔案 404
參考文獻 405

熱門詞條

聯絡我們