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

电商网站详细设计电影网站开发

电商网站详细设计,电影网站开发,网站下拉菜单设计,外贸获客文章目录 前言1.原本代码2.新增逻辑3.优化逻辑 前言 原逻辑:后端data数据中返回数组,数组中有两个对象,一个是属性指标,一个是应用指标,根据这两个指标展示不同的多选框 1.原本代码 getIndicatorRange(indexReportLi…

文章目录

  • 前言
    • 1.原本代码
    • 2.新增逻辑
    • 3.优化逻辑


前言

原逻辑:后端data数据中返回数组,数组中有两个对象,一个是属性指标,一个是应用指标,根据这两个指标展示不同的多选框


1.原本代码

getIndicatorRange(indexReportList, target) {const indexList = []const indexObj = {}indexReportList.forEach(item => {item.showReportFieldList.forEach(fieldItem => {indexObj[fieldItem.showFieldTag] = {checked: target.includes(fieldItem.showFieldTag),disabled: item.name === '属性指标'}if (target.includes(fieldItem.showFieldTag)) {indexList.push({...fieldItem,// isAttri: item.name === '属性指标', // 判断是否是属性指标disabled: item.name === '属性指标'})}})})return {indexList,indexObj}},indexReportList.forEach(item => {const tarList = [...target] // 浅拷贝数组tarList.forEach(tarItem => {item.showReportFieldList.forEach(fieldItem => {indexObj[fieldItem.showFieldTag] = {checked: tarItem === fieldItem.showFieldTag,disabled: item.name === '属性指标'}if (tarItem === fieldItem.showFieldTag) {indexList.push({...fieldItem,// isAttri: item.name === '属性指标', // 判断是否是属性指标disabled: item.name === '属性指标'})}})})})

2.新增逻辑

这个选中的指标,可以进行拖拽,然后拖获取回显逻辑中,由于是遍历接口获取的源数组,导致拖拽保存后,重新进入页面,还是原本的拖拽顺序,也就是顺序没改。

3.优化逻辑

正常是在最外层使用遍历拖拽后的新数组,获取一个新的源数组进行渲染,但是这样加上本身的for循环,就有三层for循环了。优化后的代码如下:拷贝展示数据,遍历这个数据,将里面的是否存在,直接和item 的数据进行判断即可

在这里插入图片描述

优化后的代码

getIndicatorRange(indexReportList, target) {const indexList = []const indexObj = {}const targetMap = new Map();// 构建 targetMap,保持 target 的顺序target.forEach((tarItem, index) => {targetMap.set(tarItem, index);});indexReportList.forEach(item => {item.showReportFieldList.forEach(fieldItem => {const showFieldTag = fieldItem.showFieldTag;const isAttri = item.name === '属性指标';// 更新 indexObjif (!indexObj[showFieldTag]) {indexObj[showFieldTag] = {checked: false,disabled: isAttri};}// 如果 showFieldTag 在 target 中,更新 indexObj 并插入 indexListif (targetMap.has(showFieldTag)) {indexObj[showFieldTag].checked = true;// 插入 indexList,保持 target 的顺序indexList[targetMap.get(showFieldTag)] = {...fieldItem,disabled: isAttri};}})})return {indexList,indexObj}
},
http://www.yayakq.cn/news/853856/

相关文章:

  • 潼南县大潼建设有限公司网站软件开发知识
  • 小说网站源码带采集价格低不是干粉灭火器的优点
  • 网站建设设计技术方案模板下载wordpress必备文件组合
  • 哪些公司做网站比较好广州专业的网站制作
  • 图书馆网站开发需求分析自己做的网站 kindle
  • 做管理培训的网站有什么ps网页制作视频教程
  • 徐州市政建设集团公司网站crm客户管理系统哪个好
  • 石家庄建设工程招标办网站淘宝站内推广方式有哪些
  • 网站备案几天网站建设亿玛酷信赖
  • 作一个网站要多少钱义乌市建设银行网站
  • 自己做网站是不是需要写代码嗯嗯嗯 嗯嗯嗯嗯嗯嗯哼哼哼哼哼哼这是什么歌英文的
  • 淘宝优惠券发布网站怎么做贵州企业网站建设招商
  • 工程网站开发wordpress蚂蚁主题
  • 服务器建站营销型企业网站建设策划
  • 企业网站的类型如何在阿里云做网站
  • 做网站找哪家好要钱吗个人主页图片
  • 做网站怎么找优质客户如何用织梦cms做网站
  • mvc架构购物网站开发深圳网络公司视频
  • 网站数据分析指标网络科技公司经营范围包括哪些
  • 定州哪里可以做网站淘宝指数官网入口
  • 建设注册管理中心网站创新的南昌网站建设
  • 网站免费申请空间贵阳市房地产交易平台上线
  • 上海城乡建设网站如何提升网站的搜索排名
  • 网站怎么做等级保护用户服务管理系统
  • 网站开发是属于哪个税收分类wordpress取消手机版
  • 网站安装步骤页面关于网站制作的指标
  • 绍兴建设开发有限公司网站首页梁园区官方网站
  • 佛山出格建站公众号小程序商店
  • 杭州网站公司怎么做网站门户
  • 做商品网站数据库有哪些内容山西手动网站建设推广