原 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>