Vue长列表优化专题(一)

虚拟滚动在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
先看一下mockjs语法:
在这里插入图片描述
参考:
mockjs介绍
mock.js官方示例

先上服务端源码:

// 使用mock构建本地服务器输出数据结果
const Mock = require('mockjs')
const Express = require('express')
const app = Express()

// 根据传入的参数num 生成num条模拟的数据列表
function generatorList(num) {
  return Mock.mock({
    [`list|${num}`]: [{
      // 模拟id, 自增方式追加
      'id|+1': 1,
      // 模拟标题 中文字符串长度为15-25位
      'title': '@ctitle(15,25)',
      // 模拟图片索引 自然数从0到15
      'image': '@natural(0,15)',
      // 模拟到访人数 自然数从0-9999
      'reads': '@natural(0,9999)',
      // 模拟新闻来源 中文字符串长度为3-10位
      'from': '@ctitle(3,10)',
      // 模拟发布时间 时间格式
      'date': '@date(yyyy-MM-dd)'
    }]
  })
}

// 允许跨域请求
app.all('*', function(req, res, next) {
  res.header('Access-Control-Allow-Origin', '*')
  res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS')
  res.header('Access-Control-Allow-Headers', 'X-Requested-With')
  res.header('Access-Control-Allow-Headers', 'Content-Type')
  next()
})

// 截取路由并反馈数据
app.get('/data', function (req, res) {
  // 获取get请求数据条数参数num
  const { num } = req.query
  return res.send(generatorList(num))
})

// 设置端口
const server = app.listen(9999, function () {
  console.log('Local mock service activated! Running at http://localhost:9999/data?num=')
})

我们把项目跑起来:
在这里插入图片描述
在浏览器中输入地址,num给20试试:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值