vue3+elementPlus:前端自定义el

您所在的位置:网站首页 elementuiicon图标自定义 vue3+elementPlus:前端自定义el

vue3+elementPlus:前端自定义el

2023-04-19 10:23| 来源: 网络整理| 查看: 265

重点:template蒙版下svg和use,然后前端遍历添加key和value,取判断放图标

HTML结构:el-tree里面包裹template(关键点)

//关键步骤 { { data.name }}

方法一:使用for循环

for循环数据,前端自定义tree图标第一种方法,后端key没有icon字段,自己添加

//遍历数据 for(const key in obj){ // console.log(obj[key]); //前端自定义tree图标第一种方法 if (obj[key].nodeType===1) { //后端key没有icon字段,自己添加 obj[key].icon="icon-chang" }else if(obj[key].nodeType===22){ obj[key].icon="icon-peizhi" }else if(obj[key].nodeType===234){ obj[key].icon="icon-jiance" }

方法二: 使用map遍历

直接map遍历前端自定义tree图标

res.data.data.map((v) => { //第二种方法 //前端自定义tree图标 if (v.nodeType == 1) { v.icon = "icon-chang"; } else if (v.nodeType == 22) { v.icon = "icon-peizhi"; } else if (v.nodeType == 234) { v.icon = "icon-jiance"; } 完整代码: //html { { data.name }} //js //获取tree数据 const treeList = (key, resolve) => { HeaderList({ id: key, childNodeType: 2324, }) .then((res) => { if (res.status === 200) { //核心代码 // //for循环 //let obj=res.data.data // //遍历数据 //for(const key in obj){ // //前端自定义tree图标第一种方法 //if (obj[key].nodeType===1) { // //后端key没有icon字段,自己添加 //obj[key].icon="icon-chang" //}else if(obj[key].nodeType===22){ //obj[key].icon="icon-peizhi" //}else if(obj[key].nodeType===234){ //obj[key].icon="icon-jiance" //} //} return resolve( res.data.data.map((v) => { //第二种方法 //前端自定义tree图标 if (v.nodeType == 1) { v.icon = "icon-chang"; } else if (v.nodeType == 22) { v.icon = "icon-peizhi"; } else if (v.nodeType == 234) { v.icon = "icon-jiance"; } // console.log(v.nodeType); TreeNode.value.loaded = false; // 主动调用展开节点方法,重新查询该节点下的所有子节点 TreeNode.value.expand(); return { ...v, leaf: !v.hasChildren}; }) ); } }) .catch(() => { return Promise.resolve([]); }); }; //css .icon { width: 20px; height: 20px; font-size: 20px; //margin-right: 10px; //margin-left: 4px; vertical-align: -0.15em; fill: currentColor; overflow: hidden; }

作者上一篇文章,

解决前端项目问题:Uncaught (in promise) TypeError: resolve is not a function报错_意初的博客-CSDN博客运行项目浏览器:Uncaught (in promise) TypeError: resolve is not a function报错。https://blog.csdn.net/weixin_43928112/article/details/127005043?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22127005043%22%2C%22source%22%3A%22weixin_43928112%22%7D



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3