使用VUE如何实现在前端对后台的请求数据进行转换?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
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)
重新赋值, 而不是更改引用。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。