基於 Node.js + Express + mongoDB + Bootstrap 搭建的電影網站


電影網站

GitHub: https://github.com/bxm0927/movie-website

此項目是基於 Node.js + Express + mongoDB + Bootstrap 搭建的電影網站。

主要功能模塊:

  • 一期:前台電影展示頁、電影詳情頁、后台電影管理中心(電影錄入、電影修改)
  • 二期:用戶登錄注冊注銷功能、用戶識別和持久化、后台用戶管理中心(用戶錄入、用戶修改)、電影評論

圖片預覽

技術棧

【前端】

  • HTML/CSS/JS:亘古不變三件套
  • ES6:ECMAScript 新一代語法,這也是以后的趨勢
  • Monment.js:時間日期格式化插件
  • jQuery:主要用到 jQuery 的 ajax 方法處理異步請求和 DOM 操作
  • Bootstrap:頁面 UI 框架,天然響應式,但是樣式爛大街…

【后端】

  • pug:pug (以前的 jade) 是一個高性能的模板引擎,用來生成 HTML
  • Node.js:整個后端由 Node.js 驅動;用 npm 安裝資源文件
  • Express:一個基於 Node.js 平台的 web 開發框架,由路由和中間件構成

【數據庫】

  • mongoDB:進行數據存儲的 NoSQL 數據庫
  • mongoose:Node.js 的 mongodb 驅動軟件包,是進行 mongoDB 快速建模的工具

【自動化構建】

  • gulp:前端自動化構建工具
  • JSHint:JS 代碼校驗

收獲

  1. 熟悉了 pug 的語法及其在 Node.js 中的使用方法,了解到 pug 的優缺點及如何取舍
  2. 初步掌握了 express 框架的使用,如何處理路由以及中間件
  3. 掌握了 mongoose 在 Node.js 中如何連接數據庫,以及 schema、model、entity 的使用
  4. 前后端數據傳遞與視圖展現的流程
  5. 學會了使用 bcryptjs(Node.js 的一個加解密模塊)對密碼進行 “hash + salt” 處理
  6. 借助會話與 cookie 進行用戶識別和持久化

TODO

  1. 用戶登錄注冊未做表單校驗等等
  2. 全面 Promise 化
  3. 升級成 ejs 模版
  4. 電影評論功能的功能過於簡化
  5. 增加個人中心
  6. 前后台請求盡量使用 ajax 異步獲取
  7. 還有很多…

Build Setup

# clone the repo into your disk.
$ git clone https://github.com/bxm0927/movie-website.git

# install dependencies
$ npm install

# run
$ npm start

# visit
$ http://localhost:3000/

License

The code is available under the MIT license.

Thanks

@Scott


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com