express返回数据实现分页

var express = require('express');
var router = express.Router();


let lesson = [
    {
        id: '1',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://pic2.ablesky.cn/content/pic/coursephoto/2018/01/14/292941d6-c4a0-4948-909f-2f934f9d9b31.jpg'
    },
    {
        id: '2',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://pic5.ablesky.cn/content/pic/coursephoto/2017/12/04/9c3f633a-86cc-4475-9f16-0a95ef9bb088.png'
    },
    {
        id: '3',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://img2.imgtn.bdimg.com/it/u=1409224514,45938994&fm=27&gp=0.jpg'
    },
    {
        id: '4',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://img5.imgtn.bdimg.com/it/u=974328080,785294559&fm=27&gp=0.jpg'
    },
    {
        id: '5',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://img5.imgtn.bdimg.com/it/u=263704529,3807425268&fm=27&gp=0.jpg'
    },
    {
        id: '6',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://img0.imgtn.bdimg.com/it/u=2619639360,2642417572&fm=27&gp=0.jpg'
    },
    {
        id: '7',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://img2.imgtn.bdimg.com/it/u=3421657713,305786063&fm=27&gp=0.jpg'
    },
    {
        id: '8',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://img0.imgtn.bdimg.com/it/u=1562822542,680120372&fm=27&gp=0.jpg'
    },
    {
        id: '9',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://img1.imgtn.bdimg.com/it/u=460969158,2720773441&fm=27&gp=0.jpg'
    },
    {
        id: '10',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://img0.imgtn.bdimg.com/it/u=933401860,3633993042&fm=27&gp=0.jpg'
    },
    {
        id: '11',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://img0.imgtn.bdimg.com/it/u=1621594874,1585448284&fm=27&gp=0.jpg'
    },
    {
        id: '12',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://img4.imgtn.bdimg.com/it/u=3059960288,1553393280&fm=27&gp=0.jpg'
    },
    {
        id: '13',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://img3.imgtn.bdimg.com/it/u=296894285,2057887768&fm=27&gp=0.jpg'
    },
    {
        id: '14',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://img1.imgtn.bdimg.com/it/u=3718356041,1085602404&fm=27&gp=0.jpg'
    },
    {
        id: '15',
        title: 'react课程',
        type: 'react',
        imgurl: 'http://img2.imgtn.bdimg.com/it/u=2656601577,2546325327&fm=27&gp=0.jpg'
    },
    {
        id: '16',
        title: 'vue课程',
        type: 'vue',
        imgurl: 'http://img2.imgtn.bdimg.com/it/u=3203805412,4179644444&fm=27&gp=0.jpg'
    },

]
//获取课程接口
//服务器一共有18条数据。每次取5条;下次从5条偏移5条
//offset偏移量;limit每次取多少条;type课程类型;
router.get('/:offset/:limit/:type', function (req, res, next) {
    console.log(req.params)
    let lists=[],newArry=[]
    let {offset, limit, type} = req.params
    //返回全部课程
    if(type==='all'){
        lists=lesson
    }
    //过滤数据
    else{
        lists=lesson.filter((item, index) => {
            return item.type===type
        })
    }
    offset=parseInt(offset)
    limit=parseInt(limit)
    //.slice(start,end):start必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推
    newArry=lists.slice(offset,offset+limit)

    let hasmore=offset+limit > lists.length ? false : true
    res.send({
        hasmore,
        list:newArry
    });
});

module.exports = router;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值