| | |
| | | @select="userSelect" |
| | | @select-all="userSelect" |
| | | @selection-change="selectionChange" |
| | | @expand-change="expandChange" |
| | | @row-dblclick="rowDbClick" |
| | | @row-click="rowClick" |
| | | @header-click="headerClick" |
| | |
| | | style="width: 100%" |
| | | :scrollbar-always-on="true" |
| | | > |
| | | <el-table-column |
| | | v-if="showExpand" |
| | | type="expand" |
| | | :fixed="expand.fixed" |
| | | :width="expand.width || 55" |
| | | > |
| | | <template #default="scope"> |
| | | <div class="expand-cell"> |
| | | <table-render |
| | | v-if="expand.render && typeof expand.render == 'function'" |
| | | :row="scope.row" |
| | | :index="scope.$index" |
| | | :column="expand" |
| | | :render="expand.render" |
| | | ></table-render> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | v-if="ck" |
| | | type="selection" |
| | |
| | | return 1; |
| | | }, |
| | | }, |
| | | expand: { |
| | | type: Object, |
| | | default: () => { |
| | | return {}; |
| | | }, |
| | | }, |
| | | pagination: { |
| | | type: Object, |
| | | default: function () { |
| | |
| | | this.defaultLoadPage && this.load(); |
| | | }, |
| | | computed: { |
| | | showExpand() { |
| | | return !!(this.expand && typeof this.expand.render === "function"); |
| | | }, |
| | | filterColumns() { |
| | | return this.columns.filter((x, index) => { |
| | | if (!x.field) { |
| | |
| | | }, |
| | | }, |
| | | methods: { |
| | | expandChange(row, expandedRows) { |
| | | if (this.expand && typeof this.expand.onChange === "function") { |
| | | this.expand.onChange(row, expandedRows, this); |
| | | } |
| | | this.$emit("expandChange", { row, expandedRows }); |
| | | }, |
| | | watchRowSelectChange(newLen, oldLen) { |
| | | if (newLen < oldLen && this.selectRows.length) { |
| | | this.selectRows = []; |
| | |
| | | border-bottom: 1px solid; |
| | | padding-bottom: 2px; |
| | | } |
| | | .vol-table .expand-cell { |
| | | padding: 8px 0; |
| | | } |
| | | .vol-table .empty-tag { |
| | | border: none; |
| | | background: none; |