本文为大家分享了nodejs个人博客开发的分配数据,具体内容如下

使用回掉大坑进行取数据
能看明白的就看,看不明白的手动滑稽
/**
* 首页控制器
*/
var router=express.Router();
/*每页条数*/
var pageSize=5;
router.get('/',function(req,res,next){
var currentPage=parseInt(req.params.page);
var cid=0;
var categoryModel=F.model("category");
var articleModel=F.model("article");
// 分类数据
categoryModel.getAllList(function(err,categoryList){
// 文章条数
articleModel.getCount(cid,function(err,nums){
// 文章分页
articleModel.getArticlePager(cid,currentPage,pageSize,function(err,articleList){
var nextPage=(currentPage+1)>=Math.ceil(nums[0].num/pageSize) ? Math.ceil(nums[0].num/pageSize) : currentPage+1;
var prePage=(currentPage-1)<=0 ? 1 : currentPage-1;
// 归档
articleModel.getArchives(function(err,allArticleTime){
var newArticleTime=[];
for(var i=0;i<allArticleTime.length;i++){
newArticleTime.push(F.phpDate("y年m月",allArticleTime[i].time));
}
/*分配数据*/
var data={
categoryList:categoryList,
articleList:articleList,
cid:cid,
nextPage:nextPage==0 ? 1 : nextPage,
prePage:prePage,
allArticleTime:newArticleTime,
currentPage:currentPage
};
/*渲染模板*/
res.render("home/index",data);
});
});
});
});
//F.model("category").addCate({"name":"测试"});
//F.model("category").saveCate({"name":"测试1"},"id=4");
//F.model("category").delCate("id=4");
/*渲染模板*/
//res.render("home/index");
});
module.exports=router;
文章模型:
/**
* 文章模型文件
*/
module.exports={
/*获取条数*/
getCount:function(categoryId,callback){
var condition="";
if(categoryId!=0){
condition="where category_id="+categoryId;
}
var sql="select count(*) num from article "+condition;
db.query(sql,callback);
},
/*获取分页数据*/
getArticlePager:function(categoryId,currentPage,pageSize,callback){
if(currentPage<=0||!currentPage) currentPage=1;
var start=(currentPage-1)*pageSize;
var end=pageSize;
var condition="";
if(categoryId!=0){
condition="where category_id="+categoryId;
}
var sql="select * from article "+condition+" order by time desc limit "+start+","+end;
db.query(sql,callback);
},
/*归档*/
getArchives:function(callback){
db.query("select time from article order by time desc",callback);
}
};
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# nodejs
# 个人博客
# 从零学习node.js之利用express搭建简易论坛(七)
# node.js博客项目开发手记
# Node.js+jade抓取博客所有文章生成静态html文件的实例
# 利用Vue.js+Node.js+MongoDB实现一个博客系统(附源码)
# nodejs个人博客开发第七步 后台登陆
# nodejs个人博客开发第六步 数据分页
# nodejs个人博客开发第四步 数据模型
# nodejs个人博客开发第三步 载入页面
# nodejs个人博客开发第二步 入口文件
# nodejs个人博客开发第一步 准备工作
# node.js实现博客小爬虫的实例代码
# [将免费进行到底]在Amazon的一年免费服务器上安装Node.JS
# NPM和OurJS博客
# node+koa2+mysql+bootstrap搭建一个前端论坛
# 条数
# 分页
# 每页
# 能看
# 就看
# 看不
# 大家分享
# 首页
# 具体内容
# 大家多多
# 博客
# currentPage
# res
# parseInt
# params
# pageSize
# count
# req
# function
# page
相关文章:
如何在阿里云通过域名搭建网站?
佛山网站制作系统,佛山企业变更地址网上办理步骤?
建站之星3.0如何解决常见操作问题?
如何高效配置IIS服务器搭建网站?
如何选择美橙互联多站合一建站方案?
如何通过免费商城建站系统源码自定义网站主题与功能?
ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?
建站之星展会模版如何一键下载生成?
如何解决VPS建站LNMP环境配置常见问题?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
如何在Golang中引入测试模块_Golang测试包导入与使用实践
表情包在线制作网站免费,表情包怎么弄?
网站制作培训多少钱一个月,网站优化seo培训课程有哪些?
,网页ppt怎么弄成自己的ppt?
建站之星代理如何获取技术支持?
如何高效完成独享虚拟主机建站?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
如何快速搭建高效服务器建站系统?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
,交易猫的商品怎么发布到网站上去?
如何用VPS主机快速搭建个人网站?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
建站主机功能解析:服务器选择与快速搭建指南
建站主机是什么?如何选择适合的建站主机?
简历在线制作网站免费,免费下载个人简历的网站是哪些?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
如何快速选择适合个人网站的云服务器配置?
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
制作网站的基本流程,设计网站的软件是什么?
如何选择网络建站服务器?高效建站必看指南
公司网站制作需要多少钱,找人做公司网站需要多少钱?
常州自助建站费用包含哪些项目?
如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法
合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?
建站之星安装模板失败:服务器环境不兼容?
建站之星后台管理系统如何操作?
如何快速完成中国万网建站详细流程?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
已有域名和空间如何快速搭建网站?
电商网站制作公司有哪些,1688网是什么意思?
建站之星云端配置指南:模板选择与SEO优化一键生成
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
Swift中switch语句区间和元组模式匹配
建站之星如何取消后台验证码生成?
python的本地网站制作,如何创建本地站点?
如何选择建站程序?包含哪些必备功能与类型?
建站org新手必看:2024最新搭建流程与模板选择技巧
网站制作话术技巧,网站推广做的好怎么话术?
建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析
*请认真填写需求信息,我们会在24小时内与您取得联系。