element-ui中table表头添加元素(或者图标)

在这里插入图片描述
在这里插入图片描述

实现功能:element-ui table表头开始单元格 添加元素。

直接上代码:

html

<el-table-column type="expand" width="64" label-class-name="use" >
	//...这里面是其余的代码
</el-table>

js

mounted(){
	this.setLabel();
},

setLabel() {
	let _this = this;
	this.$nextTick(() => {
		let cellDiv = document.getElementsByClassName('cell use')[0]
		cellDiv.setAttribute("style","cursor:pointer");
		let node = document.createElement('i')
		node.setAttribute('class', 'el-icon el-icon-arrow-right')
		node.setAttribute('is-expand', 'no'); //设置属性is-expand的值
		node.onclick = function () {
			_this.cellDivClick.call(_this, node);
		}
		cellDiv.appendChild(node)
	})
},
cellDivClick(ele) {
	let state = ele.getAttribute('is-expand'); //获取属性is-expand的值
	//关闭的情况点击
	if (state === 'no') {
		//展开
		for(let i=0; i<this.systemInfoList.length; i++){
			this.expands.push(this.systemInfoList[i].systemId)
		}
		ele.setAttribute('class', 'el-icon el-icon-arrow-down')
		ele.setAttribute('is-expand', 'yes')
	} else if (state === 'yes') {
		//展开的情况点击关闭
		this.expands = [];
		ele.setAttribute('class', 'el-icon el-icon-arrow-right')
		ele.setAttribute('is-expand', 'no')
	}
},

总结 使用过directives 不好使,最后改成这种方式。虽然解决了,但是留有遗憾。因为指令不能成功实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值