el-tree子节点添加双击事件

为el-tree子节点添加双击事件

template代码部分:
<el-col :span="8">
                <h3>设备列表层级动态加载数据</h3>
                <el-tree
                        :data="treeData"
                        node-key="id"
                        ref="treeRef"
                        lazy
                        :load="loadNode"
                        :props="dpross"
                        :render-content="renderContent"
                >
                </el-tree>
            </el-col>
script代码部分:
<script lang="tsx" setup>
import { ref } from 'vue'
import { treeLazyData } from '../api/test/test'
import { ElTree } from 'element-plus'
const treeData = ref([])
const dpross = {
    children: 'children',
    label: 'label',
    isLeaf: 'leaf'
}
const treeRef = ref(ElTree)
// 动态加载节点数据
const loadNode = async (node , resolve) => {
    const dealres = ref('')
    if (node.level !== 0) {
        // console.log(treeRef.value!.getCheckedNodes(false, false))
        // console.log('id:' + node.data.id + ',type:' + node.data.type + ',label:' + node.data.label)
        dealres.value = node.data.id
    }
    const ress = await treeLazyData(dealres.value)
    return resolve(ress.data)
}
// 打开视频双击事件
const openCamera = () => {
    console.log('打开视频双击事件====')
}
//设备列表渲染
const renderContent = (h, { node, data, store }) => {
    console.log("nodeID:" + node.data.id + ",label:" + data.label + ",state:" + data.state)
    if (data.type === 'camera') {
    	// 在线状态的设备
        if (data.state === 1) {
            return (<span><svg-icon icon="camera-channel" /><span style="padding-left: 4px;" ondblclick = { openCamera }>{node.label}</span></span>)
        } else {
            return (<span><svg-icon icon="camera-off" /><span style="padding-left: 4px;" ondblclick = { openCamera }>{node.label}</span></span>)
        }
    }
    return (<span>{node.label}</span>)
}
</script>
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值