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

网站建设作业指导书莱芜网红小莱芜

网站建设作业指导书,莱芜网红小莱芜,高职示范校建设专题网站,如何实现输入域名访问网站首页项目场景: 根据不同分类数据,实现数据TOP榜轮播。比如,这里有20种类型,满足这20种类型下的TOP详情数据轮播渲染。 问题描述 提示:重点是后端接口无法满足全量分类的TOP排行数据量,这里只能前端根据不同分类…

项目场景:

根据不同分类数据,实现数据TOP榜轮播。比如,这里有20种类型,满足这20种类型下的TOP详情数据轮播渲染。


问题描述

提示:重点是后端接口无法满足全量分类的TOP排行数据量,这里只能前端根据不同分类逐一请求并渲染

大致思路:
1、轮播肯定需要满足一个时间差,考虑到循环,这里使用定时器const timer = setInterval();
2、记录分类总量const lengthType:number = typeLists.length. (这里typeLists为分类数据集),便于后期请求控制;
3、步骤一暂定一分钟跑一次请求 getTopSellingList();
4、步骤三完成后,保存当前分类TOP详情 let showTOPInfos={},后面解释为什么用对象;
5、if Object.keys(showTOPInfos).length < lengthType. 重复步骤三、四
6、if Object.keys(showTOPInfos).length === lengthType. 结束定时器timer;
7、此时进入重要环节,对已经获取的数据实现切换渲染,定义const allTimer = setInterval(),根据分类每分钟一次渲染一个分类TOP排行数据;


实现部分:

提示:第一个setInterval为了逐一获取分类数据并轮播渲染,第二个setInterval则是获取完整数据后对数据进行后续轮播渲染:

获取数据
// 分类TOP数据查询 typeCode 分类标识
export const getTopSellingList = async (typeCode = '', ) => {const promise = await new Promise((resolve, reject) => {// 你的数据请求if (‘成功’) {resolve(best_sale_list);} else {reject(‘失败’);}            });return promise;
};

这里实现轮播效果:

   //  立即执行渲染一次 getTopSellingList(typeLists[0]?.typeCode).then((res) => {//对应分类top数据  TODO:接口获取showTOPInfos[typeLists[0]?.typeName] = res;setTopInfos(showTOPInfos, typeLists[0]?.typeName, res)// 渲染top榜数据});// 一分钟获取一次,并渲染(全部分类获取为止)const timer = setInterval(() => {const lengthType:number = typeLists.length; // 分类总数let lengthTOP = Object.keys(showTOPInfos).length; // 待展示的分类TOP总数if (lengthTOP < lengthType) {let nowTOP = typeLists[lengthTOP]; // 当前要获取的TOP分类getTopSellingList(nowTOP?.typeCode).then((res) => {const newTOPInfos = { [nowTOP?.typeName]: res }; // 记录追加本次获取的数据showTOPInfos = { ...showTOPInfos, ...newTOPInfos };setTopInfos(showTOPInfos, owTOP?.typeName, res)// 渲染TOP榜数据});} else if (lengthTOP === lengthType) {// 分类TOP总数达上限时 循环渲染分类TOP数据let nowIndex = 0; // 记录当前展示TOP分类索引allTimer = setInterval(() => {// 循环上限后重置if (nowIndex === Number(typeLists.length)) {nowIndex = 0;}const nowTypeName = typeLists[nowIndex].typeName; // 当前TOP分类名称// 渲染标题setTopInfos(showTOPInfos, nowTypeName, showTOPInfos[nowTitle])// 渲染TOP榜数据nowIndex += 1;}, 60000); // 一分钟更新渲染一次数据clearInterval(timer);}}, 60000);

// 数据渲染

 // 渲染TOP数据  infos 所有分类TOP商品集合  ,name 当前infos 中对应枚举名, showInfos 当前展示分类TOP数据
setTopInfos(infos, name, showInfos)=>{
// TODO : 这里进行你的数据渲染
}

注意⚠️:

这里获取的数据通过枚举存储,例如
const list = {
‘水果’ : [
{ …… },
{ …… },
],
‘饮料’ : [
{ …… },
{ …… },
],
……
}
好处:便于区分数据,根据标识渲染匹配对应数据

相关推荐:
JavaScript简单倒计时效果的实现


文章转载自:

http://nLirNN4f.Lthgy.cn
http://E3fMMQV6.Lthgy.cn
http://tNlDL92Z.Lthgy.cn
http://QRVGsMdW.Lthgy.cn
http://4AXHxnIF.Lthgy.cn
http://7sSpTp7g.Lthgy.cn
http://0aTC5tSn.Lthgy.cn
http://s4bpD2iP.Lthgy.cn
http://FR7hz0zN.Lthgy.cn
http://0g0ZDVt7.Lthgy.cn
http://fig0r122.Lthgy.cn
http://bTs3sVdu.Lthgy.cn
http://b7iBzhX9.Lthgy.cn
http://YSnCBT1K.Lthgy.cn
http://Vk6X6n23.Lthgy.cn
http://XRWiFzoH.Lthgy.cn
http://78efYPbv.Lthgy.cn
http://GFT4udPf.Lthgy.cn
http://6twBJKyI.Lthgy.cn
http://Pf6JV2vd.Lthgy.cn
http://GzUUVHR6.Lthgy.cn
http://uSSL2e4D.Lthgy.cn
http://gfO3CtmH.Lthgy.cn
http://MByql2sm.Lthgy.cn
http://CHmzp2gA.Lthgy.cn
http://Kd7jacVo.Lthgy.cn
http://n1Hq9SJU.Lthgy.cn
http://BA3VKwlj.Lthgy.cn
http://22PuniX1.Lthgy.cn
http://lxtXp650.Lthgy.cn
http://www.dtcms.com/wzjs/639709.html

相关文章:

  • 广西高端网站建设网站开发进修
  • 电子商务网站建设研究教育网站建设 培训网站建设
  • 工业园区网站建设方案河南省新闻发布会直播
  • 网站开发模板免费下载网站建设是管理费用的哪项费用
  • 贵阳手机网站建设华强北 做网站
  • 海南省建设厅网站首页无锡哪里有做网站的
  • 网站悬浮代码windows2012系统怎么建设网站
  • 网站建设怎么做展厅设计企业
  • 一个网站开发团队要什么人如何购买网站服务器
  • 网站点击弹出下载框 怎么做的网站设计公司 龙岗
  • 网站及微站建设合同免费装饰公司网站模板
  • 如何上传网站到凡科网wordpress微信网站模板
  • 济南企业网站制作郑州网站建设 58
  • 网站建设背景怎么写廊坊网站建设推广经验
  • 网站如何做数据分析汕尾住房和建设局网站
  • 股权众筹网站开发努力把网站建设成为
  • 淘宝导购网站源码html5视频教程
  • 做网站什么服务器好wordpress square主题
  • 优秀网站建设哪个公司好网站首页动图怎么做
  • 好看的中文网站设计做感恩网站的图片
  • 网站设计和网页设计一样吗网站制作的差异化定位
  • 广东省高校质量工程建设网站中山网红
  • 四川有什么好的网站建设公司集团网站设计开发
  • 做详情页生成代码的网站建设部网站王尚春
  • 北京建站优化电子商务网站建设服务
  • 门户网站制作定制深圳网络安全公司排名
  • 深圳品牌公寓seo静态页源码
  • 58同城做网站要钱吗做导航网站备案
  • 能不能不用虚拟主机建设网站会员管理网站建设
  • 自适应网站三套代码福田公司领导班子名单