Node写博客--模块开发与实现

本文介绍了一种基于Node.js的应用程序开发方法,通过模块化将应用分为前台、后台及API模块,详细展示了如何利用Express.js框架进行路由配置,并给出了具体的代码实现案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【开篇】如果我们将所有的应用程序开发的代码都写在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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值