1. 程式人生 > >Node寫部落格--模組開發與實現

Node寫部落格--模組開發與實現

【開篇】如果我們將所有的應用程式開發的程式碼都寫在app.js檔案中,這個檔案會很龐大,也會不利於接下來的開發

【模組劃分】前臺模組、後臺管理模組、API模組

使用app.use進行模組劃分(app.js中)

app.use('/admin',require('./routers/admin'));

app.use('/api',require('./routers/api'));

app.use('/',require('./routers/main'));

1.在資料夾routers中分別建立admin.js、api.js和main.js

2.現在我們在admin.js中寫入程式碼

var express = require('express');
var router =express.Router();//Express.js 4.0 有加入一個新的 Router 功能,它就像一個迷你的應用程式,可以讓應用程式內部的路由撰寫更方便、更有彈性。新增非路由中間鍵

//監聽以/admin開頭的路由,不需要再寫/admin/user了,
router.get('/user',function(req,res,next) {
    res.send('User');
})

//每一個node.js執行檔案,都自動建立一個module物件,同時,module物件會建立一個叫exports的屬性,初始化的值是 {}
//module.exports屬性可以被賦予一個新的值(例如函式或物件),賦值給 `exports` 不會修改模組,必須使用 `module.exports`
// nodejs模組中的exports物件,你可以用它建立你的模組。例如:(假設這是rocker.js檔案)
//
// exports.name = function() {
//     console.log('My name is Lemmy Kilmister');
// };
//
// 在另一個檔案中你這樣引用
//
// var rocker = require('./rocker.js');
// rocker.name(); // 'My name is Lemmy Kilmister'
// 其實,Module.exports才是真正的介面,exports只不過是它的一個輔助工具。 最終返回給呼叫的是Module.exports而不是exports。
module.exports = router;

3.然後api.js,admin.js雷同

var express = require('express');
var router =express.Router();
router.get('/',function(req,res,next) {
    res.send('Admin-user');
})

module.exports = router;

4.前端路由+模組

【main模組】 

 /  首頁
/view  內容頁

【api模組】   

/ 首頁
/register  使用者註冊
 /login  使用者登入
/comment 評論獲取
/comment/post 評論提交

【admin模組】

/ 首頁
使用者管理 /user 使用者列表
分類管理 /category 分類列表
/category/add 分類增加
/category/edit 分類修改
/category/delete 分類刪除
文章內容管理 /article 內容列表
/article/add 內容新增
/article/edit 內容修改
/article/delete 內容刪除
評論內容管理 /comment 評論列表
/comment/delete 評論刪除

5.功能開發順序

功能模組開發順序:

使用者(後臺新增資料,需要管理員資料新增資料)、欄目(後臺管理+前臺展示)、內容、評論

編碼順序:

通過Schema定義設計資料儲存結構(資料儲存)、功能邏輯、頁面展示

6.在schemas資料夾中定義一個註冊頁面users.js

相關推薦

Node部落--模組開發實現

【開篇】如果我們將所有的應用程式開發的程式碼都寫在app.js檔案中,這個檔案會很龐大,也會不利於接下來的開發 【模組劃分】前臺模組、後臺管理模組、API模組 使用app.use進行模組劃分(app.js中) app.use('/admin',require('./ro

Node部落--普通使用者和管理員功能的實現

1.在schema/users.js中新增是否是管理員的欄位 //連線資料庫 var mongoose=require('mongoose'); //資料庫操作文件,可以檢視http://mongoo

Node部落--內容評論和分頁實現

1.首先在view.html中增加評論區域 2.使用ajax方法,把評論提交上去,在api.js中寫入 var Content=require('../models/Content');//引入內容 //評論提交 router.post('/comment/pos

Node部落--資料連線、表結構Schema定義、Model建立

1.在app.js中記載資料庫模組 var mongoose = require('mongoose'); //連線資料庫 mongoose.connect(); //連線之前需要去官網下載安裝mongodb資料庫 【提示】在Mongodb安裝完成以後,在cmd中執行下

對於node.js開發指南中部落案例的修改實現(二)--程式碼

OK,廢話少說,直接上程式碼 首先是app.js,裡面很多與書中介紹的不同,不過看起來都很容易懂。首先是各種模組引用,然後就是使用session儲存狀態。 var express = require('express'); var path = require('path

Node.js部落系統--2.專案建立、安裝初始化和第一個請求的實現

技術框架 專案初始化 開啟vscode,新建一個blog資料夾,在控制檯npm init,除了出現package name:(blog)的時候需要填寫一個blog,其他都只需要回車就可以 接著執行以下命令 分別使用 npm i --save ~;安裝下列包

假裝部落 prototype、__proto__、constructor 的作用區別

*以下全文用[[Prototype]]代表物件真正的原型鏈 prototype與__proto__的區別 __proto__是真正的原型鏈,也就是[[Prototype]],使用原型鏈時,查詢物件的屬性是通過__proto__來查詢,而不是prototype varFoo=funct

基於node.js/jquery/bootstrap的部落系統開發---總結

1 express Express 是一個基於 Node.js 平臺的極簡、靈活的 web 應用開發框架,它提供一系列強大的特性,幫助你建立各種 Web 和移動裝置應用。 var express = require('express'); var app =

開發人員部落的七個理由

對於軟體開發人員來說,堅持寫部落格是個好習慣。以下是我建議大家寫部落格的七個理由。 1. 幫助整理思路 最近我做出了一個決定,那就是: 我要堅持天天寫部落格,記錄每天所學的重要東西。 在日常生活或工作中經常會經意或不經意習得一些重要知識,但是由於沒有記錄的習慣

Node.js部落系統--12.普通使用者和管理員功能的實現

首先新增加一個欄位 在資料庫中增加一個管理員使用者 新增後結果為 是否是管理員不能放在cookie中,這樣做不安全,我們需要實時的去驗證,可以在入口檔案中這樣寫  首先引入User 然後html中可以這樣寫 測試一下

聊聊在部落部落的這兩年&&《Unity 3D指令碼程式設計:使用C#語言開發跨平臺遊戲》正式出版

版本狀態: 2016.9 第一次印刷 (2016.11 輸出到臺灣) 2017.1 第二次印刷 2017.5 第三次印刷 勘誤狀態: 勘誤資訊可以在以下連結提交,多謝各位支援。 ——分割線—— 0x

Django開發個人部落網站——18、實現部落的分類

我們在設計部落格的資料庫時,分別定義了部落格的分類和標籤,規定部落格與部落格的分類為一對多關係,也就是一個部落格只能有一個分類,而部落格的標籤則為多對多的關係,一個部落格可以有多個標籤。按照功能來劃分的話,也就是部落格的標籤是對部落格分類的一個補充。 考慮到我

基於 abp vNext 和 .NET Core 開發部落專案 - 完善美化,Swagger登場

上一篇文章(https://www.cnblogs.com/meowv/p/12896898.html)已經成功將部落格專案跑起來了,那麼本篇主要是將之前遺留的問題解決,現在的程式碼看起來可能還是比較混亂,有大量與之無關的程式碼存在裡面,對於強迫症患者來說真的是零容忍。 在程式設計師界,總有一批強迫症患者,

基於 abp vNext 和 .NET Core 開發部落專案 - 整合Hangfire實現定時任務處理

上一篇文章(https://www.cnblogs.com/meowv/p/12956696.html)成功使用了Redis快取資料,大大提高部落格的響應效能。 接下來,將完成一個任務排程中心,關於定時任務有多種處理方式,如果你的需求比較簡單,比如就是單純的過多少時間迴圈執行某個操作,可以直接使用.net

自助公眾號的客服提醒功能開發實現

time echo php 討論 ken ech () xiang pin 本周我公司的技術人員做了一個有技術含量的一個新功能:客服功能。此功能主要用於公眾號客服提醒,比如客戶的商家認證審核通過,用戶購買商品成功等功能提醒,可以有效減少網站項目開發所必要的資金節約。1.接口

使用CSDN部落

**這個是我第一次用這個CSDN來寫部落格 ------希望大家可以支援 ** 我感覺從這裡應該學到很多 我學過c語言 學過java 都是寫皮毛 **很早之前就看過這個網站 ** **今天是1024 正好是一個好日子 ** 所以我也來嘗試著 去把自己學到的東西記下來 和大

使用open live writer客戶端部落(親測有效)

部落格都開了這麼久了,才開始將資料上傳,但是每次都要登入網頁確實很麻煩,所以就用open live writer,使用起來真的是挺方便的,所以將我在安裝配置時,發現的問題彙總起來以便日後再次碰到忘記怎麼處理了,哈哈,我記性不好 一:安裝      

使用markdown部落

目錄 使用markdown寫部落格 一、markdown介紹 二、在部落格園使用markdown編輯器 三、開始用markdown寫部落格 1.寫標題(用#號) 標題一 標題二 標題三

Node.js部落系統--4.靜態檔案託管

靜態資原始檔處理 在app.js中寫如下程式碼 效果如下 總結一下 /** * 使用者傳送http請求 =>url=>解析路由=>找到匹配規則=>執行指定繫結函式,返回對應內容至使用者 * /public =>靜態=>

Node.js部落系統--1.學前要求、專案功能介紹、需求分析

本系列教程《Node.JS之“個人部落格開發實戰教程”》你可以學會:深度瞭解 Nodejs+express+mongodb+mongoose,打造個人部落格,嫻熟掌握前臺的: 使用者註冊、登陸、部落格文章列表、內容預覽和評論功能。後臺的:註冊使用者管理、部落格分類管理、部落格內容以及評論的管理功能。