element-ui el-table可编辑单元格

  • Post author:
  • Post category:其他




element-ui el-table可编辑单元格

目前element不支持可编辑表格,但是提供了一个自由度比较高的slot-scope,基于此写个简单的可编辑表格。

记录一下:


在table中写两种用于切换

	<template slot-scope="scope">
        <span @class="editCell" style="width:120px;" v-show="!showVisiable || (editIndex != scope.$index)" @mouseenter="editCurrRow(scope.$index,'rowkeY')">{{scope.row.keyName}}</span>
        <el-input :id="scope.$index+'rowkeY'" size="mini" style="width:120px;" v-show="showVisiable && (editIndex == scope.$index)" @click="printFinlog" @blur="showVisiable = false" v-model="scope.row.keyName"></el-input>
    </template>

//对span标签监听 也可以使用双击dbclick click等监听事件触发


method:控制切换文本展示和编辑框输入

editCurrRow(rowId,str){
      this.editIndex = rowId;//不加editIndex,整个列都会一块变成可编辑
      this.showVisiable = true;
      let id = rowId+str;
      //也可以用this.$nextTick,个人感觉加个0.01秒的延时比下次渲染灵活一点
      setTimeout(()=>{
        document.getElementById(id).focus();
      },100)
    }       
data :{
	showVisiable:false,//控制显隐
	editIndex:-1 //当前编辑行index
}
.editCell:hover{
	cursor:pointer;
}



结束了



版权声明:本文为qq_37723643原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。