VUE前端从后台请求过来的数据进行转换数据结构操作


Posted in Javascript onNovember 11, 2020

我就废话不多说了,大家还是直接看代码吧`

let label(){
let _this = this;
let _offset = (_this.pagination.currentPage - 1) * _this.pagination.pageSize
let params ={
offset:_offset,//分页偏移量
limit:_limit,//分页查询数量
}
labelView(",params).then(res=>{
_this.list = res.data.data
_this.pagination.total = res.data.pagination.total;
//转换数据
let treeDataArray = new Array();
const element = _this.list
let obj={
name:"",
isExpand:true,
children:new Array()
}
treeDataArray.push(obj);
for(let dd1 = 0;dd1<_this.list.length;dd1++){
const element = _this.list[dd];
let obj1 ={
root:true,
isExpand:true,
name:element['model'],
children:new Array()
}
obj.children.push(obj1);
for(let dd2 = 0;dd2<element.label.length;dd2++){
const element2 = element.label[dd2];
let obj2 = {
name:element['label2'],
isExpand:true,
children:new Array()
};
obj1.children.push(obj2);
for(let dd3 = 0;dd3<element2['label3'].length;dd3++){
const element3 = element2['label3'][dd3];
obj2.children.push({
name:element3,
})
}
}
}
_this.treeList = treeDataArray;

补充知识:Vue中使用Map数据结构的坑, 直接set 无法触发 双向数据绑定(解决方案)

1. 因为想贯彻es6的使用, 在项目中 多多使用 es6 的特性, 结果Map 的 set 方法去更新数据, 视图无法同步,

故而使用重新设置的方式达到目的, 类似

let obj = Object.assign({},{})

或者

 let arr = [].concat['a']

let no = server_no.toString()
let is_check = this.collated_data.get(no).is_check
this.collated_data.get(no).is_check = !is_check
// 使用Map数据结构只能这样更新
this.collated_data = new Map(this.collated_data)

重新赋值, 而不是更改引用。

以上这篇VUE前端从后台请求过来的数据进行转换数据结构操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 动态加载 css 方法总结
Jul 11 Javascript
Prototype源码浅析 Enumerable部分之each方法
Jan 16 Javascript
用正则表达式替换图片地址img标签
Nov 22 Javascript
JavaScript设计模式之建造者模式介绍
Dec 28 Javascript
Node.js编写爬虫的基本思路及抓取百度图片的实例分享
Mar 12 Javascript
Angular学习笔记之angular的$filter服务浅析
Nov 12 Javascript
浅谈Javascript中的Label语句
Dec 14 Javascript
javascript中toFixed()四舍五入使用方法详解
Sep 28 Javascript
vuejs+element UI点击编辑表格某一行时获取内容填入表单的示例
Oct 31 Javascript
微信小程序利用云函数获取手机号码
Dec 17 Javascript
Javascript文本框脚本实现方法解析
Oct 30 Javascript
JS hasOwnProperty()方法检测一个属性是否是对象的自有属性的方法
Jan 29 Javascript
Vue 防止短时间内连续点击后多次触发请求的操作
Nov 11 #Javascript
Vue 401配合Vuex防止多次弹框的案例
Nov 11 #Javascript
VUE-ElementUI 自定义Loading图操作
Nov 11 #Javascript
在elementui中Notification组件添加点击事件实例
Nov 11 #Javascript
vue.js+element 默认提示中英文操作
Nov 11 #Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
Nov 11 #Javascript
vue 实现element-ui中的加载中状态
Nov 11 #Javascript
You might like
php下封装较好的数字分页方法
2010/11/23 PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
2013/02/18 PHP
利用php做服务器和web前端的界面进行交互
2016/10/31 PHP
C#中TrimStart,TrimEnd,Trim在javascript上的实现
2011/01/17 Javascript
瀑布流布局并自动加载实现代码
2013/03/12 Javascript
JSON序列化与解析原生JS方法且IE6和chrome测试通过
2013/09/05 Javascript
如何设置一定时间内只能发送一次请求
2014/02/28 Javascript
jQuery动画特效实例教程
2014/08/29 Javascript
angularJS 中input示例分享
2015/02/09 Javascript
实例解析jQuery插件EasyUI最常用的表单验证规则
2015/11/29 Javascript
jQuery进行组件开发完整实例
2015/12/15 Javascript
详解Vue.js动态绑定class
2016/12/20 Javascript
jQuery 实现倒计时天,时,分,秒功能
2018/07/31 jQuery
利用d3.js力导布局绘制资源拓扑图实例教程
2019/01/08 Javascript
vue使用websocket的方法实例分析
2019/06/22 Javascript
mpvue 页面预加载新增preLoad生命周期的两种方式
2019/10/17 Javascript
使用Bootstrap做一个朝代历史表
2019/12/10 Javascript
JS实现超级好看的鼠标小尾巴特效
2020/12/01 Javascript
pyramid配置session的方法教程
2013/11/27 Python
轻松实现python搭建微信公众平台
2016/02/16 Python
解决Tensorflow使用pip安装后没有model目录的问题
2018/06/13 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
Python在for循环中更改list值的方法【推荐】
2018/08/17 Python
python3.6使用pickle序列化class的方法
2018/10/22 Python
在OpenCV里使用Camshift算法的实现
2019/11/22 Python
python加载自定义词典实例
2019/12/06 Python
基于python实现matlab filter函数过程详解
2020/06/08 Python
Python爬虫教程知识点总结
2020/10/19 Python
俄罗斯外国汽车和国产汽车配件网上商店:Движком
2020/04/19 全球购物
金融专业大学生职业生涯规划范文
2014/01/16 职场文书
日本语毕业生自荐信
2014/02/01 职场文书
党员对照检查剖析材料
2014/10/13 职场文书
医院病假条范文
2015/08/17 职场文书
银行岗位培训心得体会
2016/01/09 职场文书
MySQL Router实现MySQL的读写分离的方法
2021/05/27 MySQL
Golang gRPC HTTP协议转换示例
2022/06/16 Golang