原 vue-element-extends,最新版本见 vxe-tablejavascript
最新版见 vxe-table
Vue + ElementUI 2.x 实现的可编辑表格组件,支持渲染任意组件、动态列,增删改查等操做;
保持 ElTable 一致的风格,弥补了 ElTable 可编辑表格功能的不足,兼容 ElTable 全部功能参数;
注:该组件再也不建议使用,后续推荐使用 vxe-tablecss
elx-table 功能点:html
elx-editable 功能点:vue
npm install xe-utils vue-element-extends --save
import Vue from 'vue' import 'vue-element-extends/lib/index.css' import { Editable, EditableColumn } from 'vue-element-extends' Vue.component('ElxEditable', Editable) Vue.component('ElxEditableColumn ', EditableColumn)
<template> <div> <el-button @click="$refs.editable.insert({name: 'new1'})">新增</el-button> <el-button @click="$refs.editable.removeSelecteds()">删除选中</el-button> <el-button @click="$refs.editable.clear()">清空</el-button> <elx-editable ref="editable" :data.sync="tableData"> <elx-editable-column type="selection" width="55"></elx-editable-column> <elx-editable-column type="index" width="55"></elx-editable-column> <elx-editable-column prop="name" label="只读"></elx-editable-column> <elx-editable-column prop="sex" label="性别" :edit-render="{name: 'ElSelect', options: sexList}"></elx-editable-column> <elx-editable-column prop="age" label="数值" :edit-render="{name: 'ElInputNumber'}"></elx-editable-column> <elx-editable-column prop="date" label="日期" :edit-render="{name: 'ElDatePicker', attrs: {type: 'date', format: 'yyyy-MM-dd'}}"></elx-editable-column> <elx-editable-column prop="flag" label="开关" :edit-render="{name: 'ElSwitch', type: 'visible'}"></elx-editable-column> <elx-editable-column prop="remark" label="文本" :edit-render="{name: 'ElInput'}"></elx-editable-column> </elx-editable> </div> </template> <script> export default { data () { return { tableData: [{ date: 1551322088449, name: '小徐', sex: '1', age: '26', flag: false, remark: '备注' }], sexList: [ { 'label': '男', 'value': '1' }, { 'label': '女', 'value': '0' } ] } } } </script>