当前位置: 首页 > wzjs >正文

网站备份网站义乌建网站

网站备份网站,义乌建网站,wordpress 更新文章,网站模版化配置前面实现了图片的预览和切换,不过存在一个问题,当我们点击某张图片进行预览时,会把列表中其他图片一并进行请求,带来额外的网络开销。如下面的图片列表 点击上面图片列表中的第一张图片,观察浏览器控制台,发…

前面实现了图片的预览和切换,不过存在一个问题,当我们点击某张图片进行预览时,会把列表中其他图片一并进行请求,带来额外的网络开销。如下面的图片列表

点击上面图片列表中的第一张图片,观察浏览器控制台,发现一次性额外加载了多张其他图片,带来额外性能和网络开销。

因此我们希望预览图片时,减少不必要一次性图片加载。

方法一:只渲染当前图片

<swiper circular :current="currentIndex" @change="swiperChange"><swiper-item  v-for="(item,index) in classList" :key="item._id"><image v-if="index == currentIndex"  @click="maskChange" :src="item.picurl" mode="aspectFill"></image></swiper-item>
</swiper>

通过在swiper中image添加v-if条件,只有当条件满足时才渲染。上面的代码中实现:索引为当前索引。如此便实现只加载当前预览图片的请求。但是,当我们左右滑动图片时,前后出现了空白类似卡顿现象:

显然这种方法虽然节省了性能和网络开销,但带来不好的用户体验。

方法二:声明一个变量,存储当前用户预览过的图片,和前后各一张图片,当预览到第1张继续左滑时,切换为最后一张,当用户预览到最后一张继续右滑时切换为第一张。下面是代码实现:

//声明一个响应式变量数组readImages,记录用户预览过的图片
const readImages = ref([])
//图片列表,classList的值参照前面的笔记
const classList = ref([])
//首次加载
onLoad((e)=>{currentId.value = e.idcurrentIndex.value = classList.value.findIndex(item=>item._id == currentId.value)readImageFun()
})//切换图片
const swiperChange =(e) =>{currentIndex.value = e.detail.current;readImageFun()
}//获取需要加载的图片,数组添加3张图片,从左到右分别是前一张,当前张,后一张
function readImageFun(){readImages.value.push(currentIndex.value<=0 ? classList.length-1 : currentIndex.value-1,currentIndex.value,currentIndex.value>= classList.length-1 ? 0 : currentIndex.value+1)//使用set进行去重readImages.value = [...new Set(readImages.value)]
}

核心在于:

1、往数组添加3张图片,从左到右分别是前一张,当前张,后一张;

2、如果当前是第一张,则上张为图片数组的最后一张;

3、如果当前是最后一张,则下一张为图片数组的第一张。

模板的v-if判断条件替换为:

 v-if="readImages.includes(index)"

如此便可实现以最小网络消耗加载资源同时切换时没有空白卡顿现象产生。

http://www.dtcms.com/wzjs/820592.html

相关文章:

  • 网站seo关键词排名推广深圳市昊客网络科技有限公司
  • 北京建站软件网页设计的概念和特点
  • 做网站哪间好东莞网站关键词推广
  • c2c网站网址南阳理工网站建设
  • 重庆是哪个省哪个市的长沙网站优化排名
  • 如何在百度上找网站什么是网站建设规划书
  • 电商网站特点正规漫画网站开发流程
  • 网站根目录是什么广告公司企业画册设计
  • 汉庭酒店网站建设方案镇江网页设计工作室
  • 软文写作网站网站建设需要用到那些语言
  • 家居企业网站建设服务阿里云做网站选择服务器
  • 国外网站域名查询西安免费做网站电话
  • 工行网站跟建设网站区别ae模板网
  • 乐之网站制作百度搜索推广怎么做
  • 住房与建设注册中心网站大连开发区人才网
  • 信用渭南网站建设产品设计个人作品集
  • 用html制作个人网站网站静态页面下载工具
  • 在线可以做翻译的网站吗一个几个人做网站的几个故事电影
  • 上海网站建设方案咨询高阳网站制作
  • jplayer wordpress青岛seo网站推广
  • 不会编码可以做网站优化吗河北营销型网站建设
  • 西安网站优化排名外贸怎么做公司网站
  • 个人电脑做网站服务器教程为什么做网站会被批捕
  • 网站建设 app开发wordpress问答
  • 登录网站怎么做热搜词排行榜
  • 静态网站建设课程设计建邺网站建设
  • 怎么做网站网站代理建设银行官方网站手机版
  • 培训网站开发机构学校网站模板大全
  • 商务网站开发实验报告虚拟空间设置wordpress伪静态
  • 做ppt介绍网站吗企业创建网站的途径都有啥