iview tree 绑定数据

Posted supershare

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iview tree 绑定数据相关的知识,希望对你有一定的参考价值。

官方文档 :https://www.iviewui.com/components/tree

效果图

技术图片

 

  1 主体分析

<Tree ref="tree" :data="treeData" :load-data="loadData" :render="renderContent" :on-select-change="loadData"></Tree>
:load-data=loadData 异步加载数据的方法
:on-select-change="loadData" 点击树节点时触发
:data="treeData 生成tree的数据
:render="renderContent" 自定义渲染的内容

2 代码分析

//树型图标
renderContent (h, { root, node, data }) {
return h(‘span‘, {
style: {
display: ‘inline-block‘,
width: ‘100%‘
}
}, [
// 判断图标显示样式
h(‘span‘, [
h(‘img‘, {
attrs: {
src:data.parentId==‘-1‘?require(‘@/assets/images/tree/computer.png‘):
require(‘@/assets/images/tree/computer1.png‘)
            size: 18,
color: data.parentId==‘-1‘ ? ‘#70A7B8‘ :‘#70A7B8‘,
},
}
),
  // 点击莫一行文字的时候显示
h(‘span‘,{
        style: {
cursor:‘pointer‘
},
class: "a",
on:{

click:(e)=>{
this.showDetial(data.pathId)
}
}
}, data.title)
]),
]);
},
 
//异步加载数据
loadData (item, callback) {
let resourceId = this.con_rid
let attrId = this.con_id
getSourceListApi({
resourceId:resourceId,
attrId:attrId,
parentId:item.pathId,
}).then(res => {
this.loading=false
res.data.pathList.map(item => {
item.keyName = item.pathName
item["title"] = item.pathName
item["children"] = []
item["loading"] = false
})
callback(res.data.pathList);
})
},


以上是关于iview tree 绑定数据的主要内容,如果未能解决你的问题,请参考以下文章

iview 中Tree 树形控件,遇到的问题

iview tree 获取选中子节点的整条数据链

iview中tree的事件运用

基于vue手写tree插件那点事

iView中Tree组件children中动态checked选中后取消勾选再选中无效问题

iview组件库:自定义方法去控制Tree树形数据的根节点与叶节点的关联性