el-tree的renderContent的retrun的html中添加点击事件

要在 el-tree 的自定义节点内容中添加点击事件,你可以在 Render 函数中为相应的 HTML 元素绑定事件处理程序。以下是一个示例,演示如何在 el-tree 的节点内容中添加点击事件:

<template>
  <div>
    <el-tree
      :data="treeData"
      :props="treeProps"
      :render-content="renderNodeContent"
    ></el-tree>
  </div>
</template>

<script>
export default {
  data() {
    return {
      treeData: [
        {
          label: '节点1',
          children: [
            { label: '子节点1' },
            { label: '子节点2' },
          ],
        },
        {
          label: '节点2',
          children: [
            { label: '子节点3' },
            { label: '子节点4' },
          ],
        },
      ],
      treeProps: {
        children: 'children',
        label: 'label',
      },
    };
  },
  methods: {
    renderNodeContent(h, { node, data, store }) {
      return (
        <span>
          <span
            onClick={() => this.handleNodeClick(data)}
            style={{ cursor: 'pointer' }}
          >
            {data.label}
          </span>
          {data.children && data.children.length > 0 && (
            <span style="color: gray; margin-left: 5px">
              ({data.children.length})
            </span>
          )}
        </span>
      );
    },
    handleNodeClick(data) {
      console.log('点击了节点:', data);
      // 在这里执行你的逻辑
    },
  },
};
</script>

在上述示例中,我们在 Render 函数中为 <span> 元素添加了 onClick 事件处理程序,并将其绑定到 handleNodeClick 方法上。

handleNodeClick 方法中,我们可以访问到当前节点的数据对象 data。你可以在该方法中执行你的逻辑,例如处理点击事件、展开/折叠节点、加载子节点数据等。

通过这种方式,你可以在 el-tree 的自定义节点内容中添加点击事件,并在方法中处理相应的逻辑。

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值