全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

nodejs个人博客开发第五步 分配数据

本文为大家分享了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小时内与您取得联系。