@cimom-ui/standard-ui 1.1.11 → 1.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -4
- package/dist/standard-ui.common.js +298 -79
- package/dist/standard-ui.umd.js +298 -79
- package/dist/standard-ui.umd.min.js +3 -3
- package/package.json +1 -1
package/dist/standard-ui.umd.js
CHANGED
|
@@ -3147,7 +3147,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
3147
3147
|
|
|
3148
3148
|
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_noSourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
|
|
3149
3149
|
// Module
|
|
3150
|
-
___CSS_LOADER_EXPORT___.push([module.id, `.normal-report-table-panel{flex:1 1 0%;min-width:0;min-height:0;background:#fff;border:1px solid #e8edf4;border-radius:10px;box-shadow:0 6px 18px rgba(31,73,125,.06);height:100%;overflow:hidden;display:flex;flex-direction:column}.normal-report-table-wrap{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 12px}.normal-report-table-wrap .el-table,.normal-report-table-wrap .vxe-table{flex:1;min-height:0}.normal-report-table-actions{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid #edf1f6;margin-bottom:10px}.normal-report-table-actions .el-button+.el-button{margin-left:0}.normal-report-table-actions-left{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px}.normal-report-table-actions-right{flex-shrink:0;margin-left:auto;display:flex;align-items:center;gap:6px}.standard-toolbar-left,.standard-toolbar-right{display:flex;align-items:center;gap:6px;min-width:0}.standard-toolbar-left .el-button+.el-button,.standard-toolbar-right .el-button+.el-button{margin-left:0}.normal-report-column-setting-entry,.normal-report-column-setting-entry .el-popover__reference-wrapper{display:inline-flex;align-items:center}.normal-report-column-setting{min-width:270px}.normal-report-column-setting-header{padding-bottom:8px;border-bottom:1px solid #ebeef5}.normal-report-column-setting-list{max-height:300px;overflow-y:auto;padding:4px 0}.normal-report-column-setting-item{display:flex;align-items:center;gap:2px;padding:5px 4px;border-radius:4px}.normal-report-column-setting-item .el-checkbox{flex:1;min-width:0;margin-right:0;display:flex;align-items:center}.normal-report-column-setting-item .el-checkbox__input{display:flex;align-items:center;flex-shrink:0}.normal-report-column-setting-item .normal-report-column-setting-item-title{cursor:grab}.normal-report-column-setting-item .normal-report-column-setting-item-title:active{cursor:grabbing}.normal-report-column-setting-item .el-checkbox,.normal-report-column-setting-item .el-checkbox__label{-webkit-user-select:none;-moz-user-select:none;user-select:none}.normal-report-column-setting-item .normal-report-column-setting-item-title .el-checkbox__label{flex-shrink:0;width:var(--normal-report-title-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.normal-report-column-setting-item .normal-report-column-setting-item-width{flex-shrink:0;width:92px}.normal-report-column-setting-item .el-button+.el-button{margin-left:0}.normal-report-column-setting-item .is-pinned{color:#409eff}.normal-report-column-setting-item .is-sort-off,.normal-report-column-setting-item .is-sort-off:focus,.normal-report-column-setting-item .is-sort-off:hover{color:#c0c4cc}.normal-report-column-setting-item.drag-over{background:#ecf5ff}.normal-report-column-setting-footer{margin-top:8px;padding-top:8px;border-top:1px solid #ebeef5;text-align:right}.normal-report-table-footer{flex-shrink:0;box-sizing:border-box;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:8px 12px;border-top:1px solid #edf1f6}.normal-report-table-footer .normal-report-table-pagination{padding-top:0}.normal-report-table-footer.is-only-pagination{justify-content:flex-end}.normal-report-footer-empty{margin-top:10px}.normal-report-toolbar-empty{margin-bottom:10px}.normal-report-update-time{font-size:13px;color:#909399;flex-shrink:0}.vxe-table--context-menu-wrapper .vxe-context-menu--option-wrapper+.vxe-context-menu--option-wrapper,.vxe-table--context-menu-wrapper .vxe-table--context-menu-group-wrapper+.vxe-table--context-menu-group-wrapper{border-top:1px solid #e8eaec;margin-top:2px;padding-top:2px}.normal-report-table-pagination{flex-shrink:0;padding-top:10px;text-align:right}.normal-report-op-more{margin-left:10px}.normal-report-main-table.vxe-table .vxe-body--row{transition:transform .22s ease,filter .22s ease}.normal-report-main-table.vxe-table .vxe-body--row:hover{transform:translateY(-3px);filter:drop-shadow(0 8px 16px rgba(31,73,125,.22))}.vxe-table--footer-wrapper::-webkit-scrollbar{width:8px!important;height:8px!important}.vxe-table--footer-wrapper::-webkit-scrollbar-track{background-color:#fff!important}.vxe-table--footer-wrapper::-webkit-scrollbar-thumb{background-color:#dddee0!important;border-radius:5px!important;border:1px solid #f1f1f1!important}.vxe-table--footer-wrapper::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8!important}.vxe-table--footer-wrapper::-webkit-scrollbar-thumb:active{background-color:#dddee0!important}.vxe-table--footer-wrapper::-webkit-scrollbar-corner{background-color:#fff!important}.vxe-table--body-wrapper::-webkit-scrollbar{width:8px!important;height:8px!important}.vxe-table--body-wrapper::-webkit-scrollbar-track{background-color:#fff!important}.vxe-table--body-wrapper::-webkit-scrollbar-thumb{background-color:#dddee0!important;border-radius:5px!important;border:1px solid #f1f1f1!important}.vxe-table--body-wrapper::-webkit-scrollbar-thumb:active,.vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover{background-color:#dddee0!important}.vxe-table--body-wrapper::-webkit-scrollbar-corner{background-color:#fff!important}.vxe-table .vxe-header--row{height:
|
|
3150
|
+
___CSS_LOADER_EXPORT___.push([module.id, `.normal-report-table-panel{flex:1 1 0%;min-width:0;min-height:0;background:#fff;border:1px solid #e8edf4;border-radius:10px;box-shadow:0 6px 18px rgba(31,73,125,.06);height:100%;overflow:hidden;display:flex;flex-direction:column}.normal-report-table-wrap{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 12px}.normal-report-table-wrap .el-table,.normal-report-table-wrap .vxe-table{flex:1;min-height:0}.normal-report-table-actions{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid #edf1f6;margin-bottom:10px}.normal-report-table-actions .el-button+.el-button{margin-left:0}.normal-report-table-actions-left{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px}.normal-report-table-actions-right{flex-shrink:0;margin-left:auto;display:flex;align-items:center;gap:6px}.standard-toolbar-left,.standard-toolbar-query,.standard-toolbar-right{display:flex;align-items:center;gap:6px;min-width:0}.standard-toolbar-left .el-button+.el-button,.standard-toolbar-query .el-button+.el-button,.standard-toolbar-right .el-button+.el-button{margin-left:0}.normal-report-column-setting-entry,.normal-report-column-setting-entry .el-popover__reference-wrapper{display:inline-flex;align-items:center}.normal-report-column-setting{min-width:270px}.normal-report-column-setting-header{padding-bottom:8px;border-bottom:1px solid #ebeef5}.normal-report-column-setting-list{max-height:300px;overflow-y:auto;padding:4px 0}.normal-report-column-setting-item{display:flex;align-items:center;gap:2px;padding:5px 4px;border-radius:4px}.normal-report-column-setting-item .el-checkbox{flex:1;min-width:0;margin-right:0;display:flex;align-items:center}.normal-report-column-setting-item .el-checkbox__input{display:flex;align-items:center;flex-shrink:0}.normal-report-column-setting-item .normal-report-column-setting-item-title{cursor:grab}.normal-report-column-setting-item .normal-report-column-setting-item-title:active{cursor:grabbing}.normal-report-column-setting-item .el-checkbox,.normal-report-column-setting-item .el-checkbox__label{-webkit-user-select:none;-moz-user-select:none;user-select:none}.normal-report-column-setting-item .normal-report-column-setting-item-title .el-checkbox__label{flex-shrink:0;width:var(--normal-report-title-width);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.normal-report-column-setting-item .normal-report-column-setting-item-width{flex-shrink:0;width:92px}.normal-report-column-setting-item .el-button+.el-button{margin-left:0}.normal-report-column-setting-item .is-pinned{color:#409eff}.normal-report-column-setting-item .is-sort-off,.normal-report-column-setting-item .is-sort-off:focus,.normal-report-column-setting-item .is-sort-off:hover{color:#c0c4cc}.normal-report-column-setting-item.drag-over{background:#ecf5ff}.normal-report-column-setting-footer{margin-top:8px;padding-top:8px;border-top:1px solid #ebeef5;text-align:right}.normal-report-table-footer{flex-shrink:0;box-sizing:border-box;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:8px 12px;border-top:1px solid #edf1f6}.normal-report-table-footer .normal-report-table-pagination{padding-top:0}.normal-report-table-footer.is-only-pagination{justify-content:flex-end}.normal-report-footer-empty{margin-top:10px}.normal-report-toolbar-empty{margin-bottom:10px}.normal-report-update-time{font-size:13px;color:#909399;flex-shrink:0}.vxe-table--context-menu-wrapper .vxe-context-menu--option-wrapper+.vxe-context-menu--option-wrapper,.vxe-table--context-menu-wrapper .vxe-table--context-menu-group-wrapper+.vxe-table--context-menu-group-wrapper{border-top:1px solid #e8eaec;margin-top:2px;padding-top:2px}.normal-report-table-pagination{flex-shrink:0;padding-top:10px;text-align:right}.normal-report-op-more{margin-left:10px}.normal-report-main-table.vxe-table .vxe-body--row{transition:transform .22s ease,filter .22s ease}.normal-report-main-table.vxe-table .vxe-body--row:hover{transform:translateY(-3px);filter:drop-shadow(0 8px 16px rgba(31,73,125,.22))}.vxe-table--footer-wrapper::-webkit-scrollbar{width:8px!important;height:8px!important}.vxe-table--footer-wrapper::-webkit-scrollbar-track{background-color:#fff!important}.vxe-table--footer-wrapper::-webkit-scrollbar-thumb{background-color:#dddee0!important;border-radius:5px!important;border:1px solid #f1f1f1!important}.vxe-table--footer-wrapper::-webkit-scrollbar-thumb:hover{background-color:#a8a8a8!important}.vxe-table--footer-wrapper::-webkit-scrollbar-thumb:active{background-color:#dddee0!important}.vxe-table--footer-wrapper::-webkit-scrollbar-corner{background-color:#fff!important}.vxe-table--body-wrapper::-webkit-scrollbar{width:8px!important;height:8px!important}.vxe-table--body-wrapper::-webkit-scrollbar-track{background-color:#fff!important}.vxe-table--body-wrapper::-webkit-scrollbar-thumb{background-color:#dddee0!important;border-radius:5px!important;border:1px solid #f1f1f1!important}.vxe-table--body-wrapper::-webkit-scrollbar-thumb:active,.vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover{background-color:#dddee0!important}.vxe-table--body-wrapper::-webkit-scrollbar-corner{background-color:#fff!important}.vxe-table .vxe-header--row{height:36px!important}.vxe-table .vxe-header--column{padding:0!important;color:#636364!important;font-weight:600!important;font-size:13px!important;background-color:#f5f7fa!important}.vxe-table .vxe-header--column,.vxe-table .vxe-header--column>.vxe-cell{height:36px!important;max-height:36px!important;line-height:36px!important}.vxe-table .vxe-header--column>.vxe-cell{padding-top:0!important;padding-bottom:0!important}.vxe-table .vxe-body--row{height:34px!important}.vxe-table .vxe-body--row td.vxe-body--column{font-size:12px!important}.vxe-table .vxe-body--column>.vxe-cell,.vxe-table .vxe-body--row td.vxe-body--column{height:34px!important;max-height:34px!important;line-height:34px!important;padding-top:0!important;padding-bottom:0!important}.vxe-table .vxe-tree-cell{display:flex;align-items:center;height:34px;line-height:34px;overflow:hidden}.vxe-table .vxe-body--column .el-tag--mini{height:26px;line-height:24px;padding:0 4px;font-size:12px;vertical-align:middle}.vxe-table .vxe-body--column .el-button--mini{height:26px;line-height:24px;padding:0 2px;font-size:12px;vertical-align:middle}.vxe-table .vxe-body--column.col--active>.vxe-cell{overflow:visible!important;line-height:normal!important}.vxe-table .vxe-body--column.col--active .el-input,.vxe-table .vxe-body--column.col--active .el-input__inner,.vxe-table .vxe-body--column.col--active .vxe-default-input,.vxe-table .vxe-body--column.col--active .vxe-default-select,.vxe-table .vxe-body--column.col--active .vxe-default-textarea,.vxe-table .vxe-body--column.col--active .vxe-input{width:100%;height:34px!important;max-height:34px!important;line-height:32px!important;font-size:12px!important;box-sizing:border-box}.vxe-header--column.nr-header-drag-source{opacity:.45}.vxe-header--column.nr-header-drag-target{background-color:rgba(64,158,255,.08);box-shadow:inset 2px 0 0 #409eff}body.nr-header-dragging{-webkit-user-select:none;-moz-user-select:none;user-select:none}body.nr-header-dragging .vxe-header--column{cursor:grab}`, ""]);
|
|
3151
3151
|
// Exports
|
|
3152
3152
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);
|
|
3153
3153
|
|
|
@@ -121109,8 +121109,8 @@ var StandardTimePick_component = normalizeComponent(
|
|
|
121109
121109
|
)
|
|
121110
121110
|
|
|
121111
121111
|
/* harmony default export */ const StandardTimePick = (StandardTimePick_component.exports);
|
|
121112
|
-
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/StandardTable/index.vue?vue&type=template&id=
|
|
121113
|
-
var
|
|
121112
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/StandardTable/index.vue?vue&type=template&id=a9e9136a
|
|
121113
|
+
var StandardTablevue_type_template_id_a9e9136a_render = function render() {
|
|
121114
121114
|
var _vm = this,
|
|
121115
121115
|
_c = _vm._self._c;
|
|
121116
121116
|
return _c('section', {
|
|
@@ -121372,7 +121372,7 @@ var StandardTablevue_type_template_id_05e17600_render = function render() {
|
|
|
121372
121372
|
return _vm.onTableMousedown.apply(null, arguments);
|
|
121373
121373
|
}
|
|
121374
121374
|
}
|
|
121375
|
-
}, [_vm.showCheckbox ? _c('vxe-column', {
|
|
121375
|
+
}, [_vm.columnsReady && _vm.showCheckbox ? _c('vxe-column', {
|
|
121376
121376
|
attrs: {
|
|
121377
121377
|
"type": "checkbox",
|
|
121378
121378
|
"width": "50",
|
|
@@ -121381,7 +121381,7 @@ var StandardTablevue_type_template_id_05e17600_render = function render() {
|
|
|
121381
121381
|
"align": "center",
|
|
121382
121382
|
"resizable": false
|
|
121383
121383
|
}
|
|
121384
|
-
}) : _vm._e(), _vm._l(_vm.
|
|
121384
|
+
}) : _vm._e(), _vm._l(_vm.renderedColumns, function (col) {
|
|
121385
121385
|
return _c('vxe-column', {
|
|
121386
121386
|
key: col.key,
|
|
121387
121387
|
attrs: {
|
|
@@ -121444,7 +121444,7 @@ var StandardTablevue_type_template_id_05e17600_render = function render() {
|
|
|
121444
121444
|
}
|
|
121445
121445
|
}) : _vm.getFooterEmptyVisible() ? _c('standard-footer-empty') : _vm._e()], 1);
|
|
121446
121446
|
};
|
|
121447
|
-
var
|
|
121447
|
+
var StandardTablevue_type_template_id_a9e9136a_staticRenderFns = [];
|
|
121448
121448
|
|
|
121449
121449
|
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/StandardTable/ToolbarEmpty.vue?vue&type=script&lang=js
|
|
121450
121450
|
/**
|
|
@@ -121598,7 +121598,9 @@ var NormalReportCell = {
|
|
|
121598
121598
|
edit = _ctx$props.edit;
|
|
121599
121599
|
var parent = ctx.parent;
|
|
121600
121600
|
if (!col || !parent || typeof parent.renderCell !== 'function') return null;
|
|
121601
|
-
|
|
121601
|
+
// 把本次渲染的 h 传下去:操作列按钮必须在当前渲染里创建,
|
|
121602
|
+
// 不能用表格实例上预先生成的 VNode,否则 vxe 调用插槽时按钮挂不上
|
|
121603
|
+
var result = parent.renderCell(col, scope, edit, h);
|
|
121602
121604
|
if (result == null || result === '') return null;
|
|
121603
121605
|
if (Array.isArray(result)) {
|
|
121604
121606
|
return result.map(function (item) {
|
|
@@ -121789,12 +121791,12 @@ var NormalReportSlotView = {
|
|
|
121789
121791
|
// ===== 其它 =====
|
|
121790
121792
|
updateTime: '--',
|
|
121791
121793
|
// 数据更新时间(tableData 变化时自动刷新)
|
|
121792
|
-
// 表头行高
|
|
121794
|
+
// 表头行高 36px、内容行高 34px:交给 vxe-table 计算行高,和样式保持一致
|
|
121793
121795
|
headerCellConfig: {
|
|
121794
|
-
height:
|
|
121796
|
+
height: 36
|
|
121795
121797
|
},
|
|
121796
121798
|
cellConfig: {
|
|
121797
|
-
height:
|
|
121799
|
+
height: 34
|
|
121798
121800
|
},
|
|
121799
121801
|
// 有可编辑列且未传 edit-config 时使用,保持对象引用稳定,避免表格反复重置编辑状态
|
|
121800
121802
|
defaultEditConfig: {
|
|
@@ -121828,7 +121830,9 @@ var NormalReportSlotView = {
|
|
|
121828
121830
|
// ResizeObserver 实例(监听表格容器尺寸变化)
|
|
121829
121831
|
resizeTimer: null,
|
|
121830
121832
|
// 尺寸变化防抖定时器
|
|
121831
|
-
|
|
121833
|
+
// 首屏先让 standard-column 在 created 中注册完,再渲染 vxe-column。
|
|
121834
|
+
// 否则第一次往往只有操作列,vxe-table 会固化它的插槽,随后数据列插入后操作列变空白
|
|
121835
|
+
columnsReady: false
|
|
121832
121836
|
};
|
|
121833
121837
|
},
|
|
121834
121838
|
computed: {
|
|
@@ -122005,6 +122009,10 @@ var NormalReportSlotView = {
|
|
|
122005
122009
|
};
|
|
122006
122010
|
}).filter(Boolean);
|
|
122007
122011
|
},
|
|
122012
|
+
// 实际交给 vxe-table 的列:列注册完成前不输出,避免操作列先挂载
|
|
122013
|
+
renderedColumns: function renderedColumns() {
|
|
122014
|
+
return this.columnsReady ? this.vxeColumns : [];
|
|
122015
|
+
},
|
|
122008
122016
|
// vxe-table 列配置(用户列 + 操作列;多选框列在模板中单独以 <vxe-column> 声明)
|
|
122009
122017
|
// 注意:vxe-table 3.x 不消费 columns 配置对象,本计算属性仅供模板 v-for 生成 <vxe-column> 子组件
|
|
122010
122018
|
vxeColumns: function vxeColumns() {
|
|
@@ -122103,9 +122111,22 @@ var NormalReportSlotView = {
|
|
|
122103
122111
|
}
|
|
122104
122112
|
},
|
|
122105
122113
|
mounted: function mounted() {
|
|
122114
|
+
var _this4 = this;
|
|
122106
122115
|
this.initResizeObserver();
|
|
122107
122116
|
// 表头拖拽排序结束后抑制一次 click(document 捕获阶段拦截,防止拖拽结束触发排序切换)
|
|
122108
122117
|
document.addEventListener('click', this.onDocumentClickCapture, true);
|
|
122118
|
+
// 本次 patch 中 standard-column 的 created 已经完成注册,此刻再放行列
|
|
122119
|
+
this.columnsReady = true;
|
|
122120
|
+
// 列挂载后再重算。height="100%" 要等浏览器完成 flex 布局才有父容器高度,
|
|
122121
|
+
// 只在 nextTick 里算会把表体高度当成内容高度,滚动条不再出现
|
|
122122
|
+
this.$nextTick(function () {
|
|
122123
|
+
_this4.resizeRecalculate();
|
|
122124
|
+
if (typeof requestAnimationFrame === 'function') {
|
|
122125
|
+
requestAnimationFrame(function () {
|
|
122126
|
+
return _this4.resizeRecalculate();
|
|
122127
|
+
});
|
|
122128
|
+
}
|
|
122129
|
+
});
|
|
122109
122130
|
},
|
|
122110
122131
|
beforeDestroy: function beforeDestroy() {
|
|
122111
122132
|
this.destroyResizeObserver();
|
|
@@ -122130,51 +122151,51 @@ var NormalReportSlotView = {
|
|
|
122130
122151
|
},
|
|
122131
122152
|
// 工具栏左侧子组件 vnode(渲染到操作区左侧)
|
|
122132
122153
|
getToolbarLeftVNodes: function getToolbarLeftVNodes() {
|
|
122133
|
-
var
|
|
122154
|
+
var _this5 = this;
|
|
122134
122155
|
return this.getDefaultSlotVNodes().filter(function (v) {
|
|
122135
|
-
return
|
|
122156
|
+
return _this5.isVNodeOfType(v, TOOLBAR_LEFT_TYPES);
|
|
122136
122157
|
});
|
|
122137
122158
|
},
|
|
122138
122159
|
// 工具栏右侧子组件 vnode(渲染到操作区右侧)
|
|
122139
122160
|
getToolbarRightVNodes: function getToolbarRightVNodes() {
|
|
122140
|
-
var
|
|
122161
|
+
var _this6 = this;
|
|
122141
122162
|
return this.getDefaultSlotVNodes().filter(function (v) {
|
|
122142
|
-
return
|
|
122163
|
+
return _this6.isVNodeOfType(v, TOOLBAR_RIGHT_TYPES);
|
|
122143
122164
|
});
|
|
122144
122165
|
},
|
|
122145
122166
|
// 底部栏左侧子组件 vnode(渲染到底部栏左侧)
|
|
122146
122167
|
getFooterLeftVNodes: function getFooterLeftVNodes() {
|
|
122147
|
-
var
|
|
122168
|
+
var _this7 = this;
|
|
122148
122169
|
return this.getDefaultSlotVNodes().filter(function (v) {
|
|
122149
|
-
return
|
|
122170
|
+
return _this7.isVNodeOfType(v, FOOTER_LEFT_TYPES);
|
|
122150
122171
|
});
|
|
122151
122172
|
},
|
|
122152
122173
|
// 底部栏右侧分页子组件 vnode(渲染到底部栏右侧)
|
|
122153
122174
|
getFooterRightVNodes: function getFooterRightVNodes() {
|
|
122154
|
-
var
|
|
122175
|
+
var _this8 = this;
|
|
122155
122176
|
return this.getDefaultSlotVNodes().filter(function (v) {
|
|
122156
|
-
return
|
|
122177
|
+
return _this8.isVNodeOfType(v, FOOTER_RIGHT_TYPES);
|
|
122157
122178
|
});
|
|
122158
122179
|
},
|
|
122159
122180
|
// 底部空占位子组件 vnode(页面声明时渲染,未声明时使用内置默认占位)
|
|
122160
122181
|
getFooterEmptyVNodes: function getFooterEmptyVNodes() {
|
|
122161
|
-
var
|
|
122182
|
+
var _this9 = this;
|
|
122162
122183
|
return this.getDefaultSlotVNodes().filter(function (v) {
|
|
122163
|
-
return
|
|
122184
|
+
return _this9.isVNodeOfType(v, FOOTER_EMPTY_TYPES);
|
|
122164
122185
|
});
|
|
122165
122186
|
},
|
|
122166
122187
|
// 工具栏空占位子组件 vnode(页面声明时渲染,未声明时使用内置默认占位)
|
|
122167
122188
|
getToolbarEmptyVNodes: function getToolbarEmptyVNodes() {
|
|
122168
|
-
var
|
|
122189
|
+
var _this0 = this;
|
|
122169
122190
|
return this.getDefaultSlotVNodes().filter(function (v) {
|
|
122170
|
-
return
|
|
122191
|
+
return _this0.isVNodeOfType(v, TOOLBAR_EMPTY_TYPES);
|
|
122171
122192
|
});
|
|
122172
122193
|
},
|
|
122173
122194
|
// 隐藏注册区 vnode:默认插槽中除区域子组件(工具栏/底部栏功能区 + 空占位)之外的内容
|
|
122174
122195
|
getHiddenSlotVNodes: function getHiddenSlotVNodes() {
|
|
122175
|
-
var
|
|
122196
|
+
var _this1 = this;
|
|
122176
122197
|
return this.getDefaultSlotVNodes().filter(function (v) {
|
|
122177
|
-
return !
|
|
122198
|
+
return !_this1.isVNodeOfType(v, TOOLBAR_LEFT_TYPES) && !_this1.isVNodeOfType(v, TOOLBAR_RIGHT_TYPES) && !_this1.isVNodeOfType(v, FOOTER_LEFT_TYPES) && !_this1.isVNodeOfType(v, FOOTER_RIGHT_TYPES) && !_this1.isVNodeOfType(v, FOOTER_EMPTY_TYPES) && !_this1.isVNodeOfType(v, TOOLBAR_EMPTY_TYPES);
|
|
122178
122199
|
});
|
|
122179
122200
|
},
|
|
122180
122201
|
// 操作区是否显示
|
|
@@ -122264,14 +122285,14 @@ var NormalReportSlotView = {
|
|
|
122264
122285
|
},
|
|
122265
122286
|
// ===== 单元格渲染 =====
|
|
122266
122287
|
// 渲染单元格内容(统一分发):seq 序号 / 操作列按钮 / 列组件插槽与字段值
|
|
122267
|
-
renderCell: function renderCell(col, scope, isEdit) {
|
|
122288
|
+
renderCell: function renderCell(col, scope, isEdit, h) {
|
|
122268
122289
|
// 内置序号列:vxe 插槽参数 seq 即显示序号
|
|
122269
122290
|
if (col.isSeq) {
|
|
122270
122291
|
return String(scope.seq != null ? scope.seq : '');
|
|
122271
122292
|
}
|
|
122272
|
-
//
|
|
122293
|
+
// 操作列:渲染操作按钮(使用单元格本次渲染的 h)
|
|
122273
122294
|
if (col.isOp) {
|
|
122274
|
-
return this.renderOpCell(scope.row);
|
|
122295
|
+
return this.renderOpCell(scope.row, h);
|
|
122275
122296
|
}
|
|
122276
122297
|
var comp = col.comp;
|
|
122277
122298
|
if (!comp) return '';
|
|
@@ -122296,7 +122317,7 @@ var NormalReportSlotView = {
|
|
|
122296
122317
|
// 渲染单个操作按钮:active 为 false 时不再隐藏(原按 v-if 消失),
|
|
122297
122318
|
// 改为渲染 disabled 按钮(变灰不可操作)
|
|
122298
122319
|
renderOpButton: function renderOpButton(h, row, btn, idx) {
|
|
122299
|
-
var
|
|
122320
|
+
var _this10 = this;
|
|
122300
122321
|
var active = this.isOpActive(btn, row);
|
|
122301
122322
|
var data = {
|
|
122302
122323
|
key: idx,
|
|
@@ -122307,7 +122328,7 @@ var NormalReportSlotView = {
|
|
|
122307
122328
|
},
|
|
122308
122329
|
on: {
|
|
122309
122330
|
click: function click() {
|
|
122310
|
-
return
|
|
122331
|
+
return _this10.handleOpClick(row, btn);
|
|
122311
122332
|
}
|
|
122312
122333
|
},
|
|
122313
122334
|
// 阻止点击事件冒泡到表格单元格:
|
|
@@ -122329,7 +122350,7 @@ var NormalReportSlotView = {
|
|
|
122329
122350
|
// 超出按钮渲染为 el-dropdown-item,点击后走与直接按钮一致的 handleOpClick;
|
|
122330
122351
|
// active 为 false 的按钮以 disabled 形式变灰展示
|
|
122331
122352
|
renderOpMore: function renderOpMore(h, row, restButtons) {
|
|
122332
|
-
var
|
|
122353
|
+
var _this11 = this;
|
|
122333
122354
|
return h('el-dropdown', {
|
|
122334
122355
|
key: '__normal_report_op_more__',
|
|
122335
122356
|
"class": 'normal-report-op-more',
|
|
@@ -122339,7 +122360,7 @@ var NormalReportSlotView = {
|
|
|
122339
122360
|
},
|
|
122340
122361
|
on: {
|
|
122341
122362
|
command: function command(btn) {
|
|
122342
|
-
return
|
|
122363
|
+
return _this11.handleOpClick(row, btn);
|
|
122343
122364
|
}
|
|
122344
122365
|
},
|
|
122345
122366
|
nativeOn: {
|
|
@@ -122357,7 +122378,7 @@ var NormalReportSlotView = {
|
|
|
122357
122378
|
})]), h('el-dropdown-menu', {
|
|
122358
122379
|
slot: 'dropdown'
|
|
122359
122380
|
}, restButtons.map(function (btn, idx) {
|
|
122360
|
-
var active =
|
|
122381
|
+
var active = _this11.isOpActive(btn, row);
|
|
122361
122382
|
return h('el-dropdown-item', {
|
|
122362
122383
|
key: idx,
|
|
122363
122384
|
props: {
|
|
@@ -122372,20 +122393,20 @@ var NormalReportSlotView = {
|
|
|
122372
122393
|
},
|
|
122373
122394
|
// 渲染操作列:按钮 ≤ 3 个时全部直接渲染;超过 3 个时前 3 个直接渲染,
|
|
122374
122395
|
// 其余统一收纳进“更多”下拉菜单;active 为 false 的按钮渲染为 disabled(变灰)
|
|
122375
|
-
renderOpCell: function renderOpCell(row) {
|
|
122376
|
-
var
|
|
122377
|
-
var
|
|
122396
|
+
renderOpCell: function renderOpCell(row, h) {
|
|
122397
|
+
var _this12 = this;
|
|
122398
|
+
var createElement = h || this.$createElement;
|
|
122378
122399
|
var btns = this.opButtons;
|
|
122379
122400
|
if (!btns.length) return null;
|
|
122380
122401
|
if (btns.length <= OP_MAX_DIRECT_COUNT) {
|
|
122381
122402
|
return btns.map(function (btn, idx) {
|
|
122382
|
-
return
|
|
122403
|
+
return _this12.renderOpButton(createElement, row, btn, idx);
|
|
122383
122404
|
});
|
|
122384
122405
|
}
|
|
122385
122406
|
var nodes = btns.slice(0, OP_MAX_DIRECT_COUNT).map(function (btn, idx) {
|
|
122386
|
-
return
|
|
122407
|
+
return _this12.renderOpButton(createElement, row, btn, idx);
|
|
122387
122408
|
});
|
|
122388
|
-
nodes.push(this.renderOpMore(
|
|
122409
|
+
nodes.push(this.renderOpMore(createElement, row, btns.slice(OP_MAX_DIRECT_COUNT)));
|
|
122389
122410
|
return nodes;
|
|
122390
122411
|
},
|
|
122391
122412
|
// 操作按钮是否有效:active 可为布尔值或 (row, btn) => boolean 函数
|
|
@@ -122466,12 +122487,12 @@ var NormalReportSlotView = {
|
|
|
122466
122487
|
},
|
|
122467
122488
|
// 复制文本到剪贴板:优先使用现代 API,失败时降级 execCommand
|
|
122468
122489
|
copyTextToClipboard: function copyTextToClipboard(text) {
|
|
122469
|
-
var
|
|
122490
|
+
var _this13 = this;
|
|
122470
122491
|
if (navigator.clipboard && window.isSecureContext) {
|
|
122471
122492
|
navigator.clipboard.writeText(text).then(function () {
|
|
122472
|
-
|
|
122493
|
+
_this13.$message && _this13.$message.success('复制成功:' + text);
|
|
122473
122494
|
})["catch"](function () {
|
|
122474
|
-
|
|
122495
|
+
_this13.fallbackCopyText(text);
|
|
122475
122496
|
});
|
|
122476
122497
|
} else {
|
|
122477
122498
|
this.fallbackCopyText(text);
|
|
@@ -122557,23 +122578,23 @@ var NormalReportSlotView = {
|
|
|
122557
122578
|
// 切换列的排序开关:sortable 已纳入列 key,修改后强制重建列,
|
|
122558
122579
|
// 再由 applyColumnOrder 恢复列顺序(重建会打乱 staticColumns 顺序)
|
|
122559
122580
|
toggleHeaderColumnSort: function toggleHeaderColumnSort(uid) {
|
|
122560
|
-
var
|
|
122581
|
+
var _this14 = this;
|
|
122561
122582
|
var st = this.columnStates[uid];
|
|
122562
122583
|
if (!st) return;
|
|
122563
122584
|
this.$set(st, 'sortable', !st.sortable);
|
|
122564
122585
|
this.$nextTick(function () {
|
|
122565
|
-
return
|
|
122586
|
+
return _this14.applyColumnOrder();
|
|
122566
122587
|
});
|
|
122567
122588
|
},
|
|
122568
122589
|
// 切换列的固定状态(左/右固定互斥,再次点击同侧即取消):
|
|
122569
122590
|
// fixed 同样纳入列 key,重建后 vxe-table 重新解析固定列分组
|
|
122570
122591
|
toggleHeaderColumnFixed: function toggleHeaderColumnFixed(uid, side) {
|
|
122571
|
-
var
|
|
122592
|
+
var _this15 = this;
|
|
122572
122593
|
var st = this.columnStates[uid];
|
|
122573
122594
|
if (!st) return;
|
|
122574
122595
|
this.$set(st, 'fixed', st.fixed === side ? '' : side);
|
|
122575
122596
|
this.$nextTick(function () {
|
|
122576
|
-
return
|
|
122597
|
+
return _this15.applyColumnOrder();
|
|
122577
122598
|
});
|
|
122578
122599
|
},
|
|
122579
122600
|
// ===== 单元格编辑 =====
|
|
@@ -122689,7 +122710,7 @@ var NormalReportSlotView = {
|
|
|
122689
122710
|
},
|
|
122690
122711
|
// 交换列顺序(columnOrder 重排后强制同步 vxe-table 内部列配置)
|
|
122691
122712
|
moveColumnOrder: function moveColumnOrder(fromUid, toUid) {
|
|
122692
|
-
var
|
|
122713
|
+
var _this16 = this;
|
|
122693
122714
|
var from = this.columnOrder.indexOf(fromUid);
|
|
122694
122715
|
var to = this.columnOrder.indexOf(toUid);
|
|
122695
122716
|
if (from < 0 || to < 0 || from === to) return;
|
|
@@ -122698,7 +122719,7 @@ var NormalReportSlotView = {
|
|
|
122698
122719
|
order.splice(to, 0, moved);
|
|
122699
122720
|
this.columnOrder = order;
|
|
122700
122721
|
this.$nextTick(function () {
|
|
122701
|
-
return
|
|
122722
|
+
return _this16.applyColumnOrder();
|
|
122702
122723
|
});
|
|
122703
122724
|
},
|
|
122704
122725
|
// ===== 对外方法(父组件通过 ref 调用) =====
|
|
@@ -122718,9 +122739,10 @@ var NormalReportSlotView = {
|
|
|
122718
122739
|
getSelection: function getSelection() {
|
|
122719
122740
|
return this.$refs.xTable ? this.$refs.xTable.getCheckboxRecords() : [];
|
|
122720
122741
|
},
|
|
122721
|
-
//
|
|
122742
|
+
// 表格重新布局(扩展:外层容器尺寸变化后调用)。
|
|
122743
|
+
// 必须完整重算:否则父容器高度变化后表体高度不更新,内容超出也不出滚动条
|
|
122722
122744
|
recalculate: function recalculate() {
|
|
122723
|
-
if (this.$refs.xTable) this.$refs.xTable.recalculate();
|
|
122745
|
+
if (this.$refs.xTable) this.$refs.xTable.recalculate(true);
|
|
122724
122746
|
},
|
|
122725
122747
|
// 树形表格:设置所有节点展开/收起(供页面“展开全部/收起全部”按钮使用)
|
|
122726
122748
|
setAllTreeExpand: function setAllTreeExpand(expanded) {
|
|
@@ -122735,18 +122757,14 @@ var NormalReportSlotView = {
|
|
|
122735
122757
|
// 表现为固定列行与数据行错位。此处监听表格容器尺寸变化,防抖后
|
|
122736
122758
|
// 重新计算布局并调用 refreshScroll() 强制同步各滚动层位置。
|
|
122737
122759
|
initResizeObserver: function initResizeObserver() {
|
|
122738
|
-
var
|
|
122760
|
+
var _this17 = this;
|
|
122739
122761
|
var wrapEl = this.$refs.tableWrap;
|
|
122740
122762
|
if (!wrapEl) return;
|
|
122741
122763
|
if (typeof ResizeObserver !== 'undefined') {
|
|
122742
|
-
|
|
122764
|
+
// 首次通知也要重算。挂载时容器往往已有高度,但还不是 flex 约束后的高度,
|
|
122765
|
+
// 跳过这次就会把“内容撑开的高度”当成可视高度,滚动条不再出现
|
|
122743
122766
|
this.resizeObserver = new ResizeObserver(function () {
|
|
122744
|
-
|
|
122745
|
-
if (_this16.resizeSkipFirst) {
|
|
122746
|
-
_this16.resizeSkipFirst = false;
|
|
122747
|
-
return;
|
|
122748
|
-
}
|
|
122749
|
-
_this16.scheduleTableRecalculate();
|
|
122767
|
+
_this17.scheduleTableRecalculate();
|
|
122750
122768
|
});
|
|
122751
122769
|
this.resizeObserver.observe(wrapEl);
|
|
122752
122770
|
} else {
|
|
@@ -122754,27 +122772,30 @@ var NormalReportSlotView = {
|
|
|
122754
122772
|
window.addEventListener('resize', this.handleWindowResize);
|
|
122755
122773
|
}
|
|
122756
122774
|
},
|
|
122757
|
-
//
|
|
122775
|
+
// 防抖:连续尺寸变化(如拖拽分割线)停稳后再重算,读到的是最终宽高
|
|
122758
122776
|
scheduleTableRecalculate: function scheduleTableRecalculate() {
|
|
122759
|
-
var
|
|
122760
|
-
if (this.resizeTimer)
|
|
122777
|
+
var _this18 = this;
|
|
122778
|
+
if (this.resizeTimer) clearTimeout(this.resizeTimer);
|
|
122761
122779
|
this.resizeTimer = setTimeout(function () {
|
|
122762
|
-
|
|
122763
|
-
|
|
122764
|
-
},
|
|
122780
|
+
_this18.resizeTimer = null;
|
|
122781
|
+
_this18.resizeRecalculate();
|
|
122782
|
+
}, 50);
|
|
122765
122783
|
},
|
|
122766
|
-
//
|
|
122784
|
+
// 重新计算布局,并在重算完成后强制同步固定列与主表体的滚动位置。
|
|
122785
|
+
// 容器还没有宽度时 vxe 会直接跳过滚动计算,等下一次尺寸通知再算
|
|
122767
122786
|
resizeRecalculate: function resizeRecalculate() {
|
|
122768
|
-
var
|
|
122787
|
+
var _this19 = this;
|
|
122769
122788
|
var xTable = this.$refs.xTable;
|
|
122789
|
+
var wrapEl = this.$refs.tableWrap;
|
|
122770
122790
|
if (!xTable) return;
|
|
122791
|
+
if (wrapEl && wrapEl.clientWidth === 0) return;
|
|
122771
122792
|
var restore = function restore() {
|
|
122772
|
-
|
|
122793
|
+
_this19.$nextTick(function () {
|
|
122773
122794
|
if (xTable.refreshScroll) xTable.refreshScroll();
|
|
122774
122795
|
});
|
|
122775
122796
|
};
|
|
122776
122797
|
if (xTable.recalculate) {
|
|
122777
|
-
var result = xTable.recalculate();
|
|
122798
|
+
var result = xTable.recalculate(true);
|
|
122778
122799
|
if (result && typeof result.then === 'function') {
|
|
122779
122800
|
result.then(restore);
|
|
122780
122801
|
} else {
|
|
@@ -122830,13 +122851,13 @@ var NormalReportSlotView = {
|
|
|
122830
122851
|
});
|
|
122831
122852
|
xTable.staticColumns = next;
|
|
122832
122853
|
this.$nextTick(function () {
|
|
122833
|
-
xTable.recalculate && xTable.recalculate();
|
|
122854
|
+
xTable.recalculate && xTable.recalculate(true);
|
|
122834
122855
|
});
|
|
122835
122856
|
},
|
|
122836
122857
|
// ===== 列设置弹层 =====
|
|
122837
122858
|
// 打开列设置:以当前注册列生成工作副本(每次打开都重新初始化)
|
|
122838
122859
|
openColumnSetting: function openColumnSetting() {
|
|
122839
|
-
var
|
|
122860
|
+
var _this20 = this;
|
|
122840
122861
|
var compMap = {};
|
|
122841
122862
|
this.columnComps.forEach(function (comp) {
|
|
122842
122863
|
compMap[comp._uid] = comp;
|
|
@@ -122864,7 +122885,7 @@ var NormalReportSlotView = {
|
|
|
122864
122885
|
// 列标题宽度:按最长列名称计算(中文 25px/字 + 英文 15px/字 + 30px 余量),
|
|
122865
122886
|
// 各列标题统一按该宽度显示,保证输入框与按钮对齐
|
|
122866
122887
|
this.columnTitleWidth = this.columnDraft.reduce(function (max, c) {
|
|
122867
|
-
return Math.max(max,
|
|
122888
|
+
return Math.max(max, _this20.calcColumnTitleWidth(c.title));
|
|
122868
122889
|
}, 0);
|
|
122869
122890
|
},
|
|
122870
122891
|
// 计算单个列标题的显示宽度(px):中文 25px/字 + 英文 15px/字 + 30px 余量
|
|
@@ -122956,10 +122977,10 @@ var NormalReportSlotView = {
|
|
|
122956
122977
|
},
|
|
122957
122978
|
// 确认:将面板副本应用到列状态并刷新表格
|
|
122958
122979
|
confirmColumnSetting: function confirmColumnSetting() {
|
|
122959
|
-
var
|
|
122980
|
+
var _this21 = this;
|
|
122960
122981
|
var order = [];
|
|
122961
122982
|
this.columnDraft.forEach(function (d) {
|
|
122962
|
-
|
|
122983
|
+
_this21.$set(_this21.columnStates, d.uid, {
|
|
122963
122984
|
visible: d.visible,
|
|
122964
122985
|
fixed: d.fixed || '',
|
|
122965
122986
|
minWidth: d.minWidth != null ? d.minWidth : null,
|
|
@@ -122970,7 +122991,7 @@ var NormalReportSlotView = {
|
|
|
122970
122991
|
this.columnOrder = order;
|
|
122971
122992
|
this.columnSettingVisible = false;
|
|
122972
122993
|
this.$nextTick(function () {
|
|
122973
|
-
|
|
122994
|
+
_this21.applyColumnOrder();
|
|
122974
122995
|
});
|
|
122975
122996
|
}
|
|
122976
122997
|
}
|
|
@@ -122992,8 +123013,8 @@ var StandardTablevue_type_style_index_0_prod_lang_scss_external = __webpack_requ
|
|
|
122992
123013
|
|
|
122993
123014
|
var StandardTable_component = normalizeComponent(
|
|
122994
123015
|
components_StandardTablevue_type_script_lang_js,
|
|
122995
|
-
|
|
122996
|
-
|
|
123016
|
+
StandardTablevue_type_template_id_a9e9136a_render,
|
|
123017
|
+
StandardTablevue_type_template_id_a9e9136a_staticRenderFns,
|
|
122997
123018
|
false,
|
|
122998
123019
|
null,
|
|
122999
123020
|
null,
|
|
@@ -123289,12 +123310,13 @@ var ToolbarLeft_component = normalizeComponent(
|
|
|
123289
123310
|
* 工具栏右侧子组件(双标签组件):
|
|
123290
123311
|
*
|
|
123291
123312
|
* <standard-toolbar-right show-adjustment>
|
|
123292
|
-
* <
|
|
123313
|
+
* <standard-toolbar-query query-method="onQuery" show-export export-method="onExport" />
|
|
123293
123314
|
* </standard-toolbar-right>
|
|
123294
123315
|
*
|
|
123295
123316
|
* 说明:
|
|
123296
|
-
* 1. 必须放在 <standard-table>
|
|
123297
|
-
*
|
|
123317
|
+
* 1. 必须放在 <standard-table> 默认插槽内,标签内部内容(按钮、standard-toolbar-query 等)
|
|
123318
|
+
* 由主组件就地渲染到表格操作区右侧(“调整”列设置按钮之前);
|
|
123319
|
+
* standard-toolbar-query 只能放在本组件内部;
|
|
123298
123320
|
* 2. showAdjustment(模板写法 show-adjustment):是否显示“调整”列设置按钮。
|
|
123299
123321
|
* 列设置弹层仍由主组件 StandardTable 渲染,本组件仅声明开关;
|
|
123300
123322
|
* 主组件自身的 showAdjustment 属性继续有效(任一为 true 即显示“调整”按钮);
|
|
@@ -123365,6 +123387,199 @@ var ToolbarRight_component = normalizeComponent(
|
|
|
123365
123387
|
)
|
|
123366
123388
|
|
|
123367
123389
|
/* harmony default export */ const ToolbarRight = (ToolbarRight_component.exports);
|
|
123390
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/StandardTable/ToolbarQuery.vue?vue&type=template&id=2b616fae
|
|
123391
|
+
var ToolbarQueryvue_type_template_id_2b616fae_render = function render() {
|
|
123392
|
+
var _vm = this,
|
|
123393
|
+
_c = _vm._self._c;
|
|
123394
|
+
return _vm.placedCorrectly ? _c('div', {
|
|
123395
|
+
staticClass: "standard-toolbar-query"
|
|
123396
|
+
}, [_c('standard-input', {
|
|
123397
|
+
attrs: {
|
|
123398
|
+
"value": _vm.keyword,
|
|
123399
|
+
"placeholder": _vm.placeholder
|
|
123400
|
+
},
|
|
123401
|
+
on: {
|
|
123402
|
+
"input": _vm.onInput,
|
|
123403
|
+
"enter": _vm.onQuery
|
|
123404
|
+
}
|
|
123405
|
+
}), _c('standard-button', {
|
|
123406
|
+
attrs: {
|
|
123407
|
+
"type": "primary",
|
|
123408
|
+
"icon": "el-icon-search",
|
|
123409
|
+
"label": "查询",
|
|
123410
|
+
"loading": _vm.loading
|
|
123411
|
+
},
|
|
123412
|
+
on: {
|
|
123413
|
+
"click": _vm.onQuery
|
|
123414
|
+
}
|
|
123415
|
+
}), _vm.showExport ? _c('standard-button', {
|
|
123416
|
+
attrs: {
|
|
123417
|
+
"icon": "el-icon-upload2",
|
|
123418
|
+
"label": "导出"
|
|
123419
|
+
},
|
|
123420
|
+
on: {
|
|
123421
|
+
"click": _vm.onExport
|
|
123422
|
+
}
|
|
123423
|
+
}) : _vm._e()], 1) : _vm._e();
|
|
123424
|
+
};
|
|
123425
|
+
var ToolbarQueryvue_type_template_id_2b616fae_staticRenderFns = [];
|
|
123426
|
+
|
|
123427
|
+
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/StandardTable/ToolbarQuery.vue?vue&type=script&lang=js
|
|
123428
|
+
|
|
123429
|
+
|
|
123430
|
+
|
|
123431
|
+
/**
|
|
123432
|
+
* 工具栏右侧查询子组件(单标签):
|
|
123433
|
+
*
|
|
123434
|
+
* <standard-toolbar-right>
|
|
123435
|
+
* <standard-toolbar-query
|
|
123436
|
+
* v-model="keyword"
|
|
123437
|
+
* placeholder="请输入关键字"
|
|
123438
|
+
* query-method="onQuery"
|
|
123439
|
+
* show-export
|
|
123440
|
+
* export-method="onExport"
|
|
123441
|
+
* />
|
|
123442
|
+
* </standard-toolbar-right>
|
|
123443
|
+
*
|
|
123444
|
+
* 说明:
|
|
123445
|
+
* 1. 只能作为 standard-toolbar-right 的子组件使用,放在其它位置时不渲染并给出警告;
|
|
123446
|
+
* 2. 默认包含输入框、查询按钮;showExport(模板写法 show-export)为 true 时再显示导出按钮。
|
|
123447
|
+
* 输入框回车与点击查询等效;
|
|
123448
|
+
* 3. queryMethod / exportMethod(模板写法 query-method / export-method)
|
|
123449
|
+
* 支持函数(直接调用)与字符串(沿父组件链查找页面方法),入参为当前关键字;
|
|
123450
|
+
* 4. 同时派发 query / export 事件,参数同样为当前关键字。export 仅在导出按钮显示时由点击触发。
|
|
123451
|
+
*/
|
|
123452
|
+
/* harmony default export */ const ToolbarQueryvue_type_script_lang_js = ({
|
|
123453
|
+
name: 'StandardToolbarQuery',
|
|
123454
|
+
components: {
|
|
123455
|
+
StandardInput: StandardInput,
|
|
123456
|
+
StandardButton: StandardButton
|
|
123457
|
+
},
|
|
123458
|
+
model: {
|
|
123459
|
+
prop: 'value',
|
|
123460
|
+
event: 'input'
|
|
123461
|
+
},
|
|
123462
|
+
props: {
|
|
123463
|
+
// v-model 绑定的查询关键字
|
|
123464
|
+
value: {
|
|
123465
|
+
type: [String, Number],
|
|
123466
|
+
"default": ''
|
|
123467
|
+
},
|
|
123468
|
+
// 输入框占位文案
|
|
123469
|
+
placeholder: {
|
|
123470
|
+
type: String,
|
|
123471
|
+
"default": '请输入关键字'
|
|
123472
|
+
},
|
|
123473
|
+
// 查询方法:函数直接调用,字符串则沿父组件链查找同名方法
|
|
123474
|
+
queryMethod: {
|
|
123475
|
+
type: [Function, String],
|
|
123476
|
+
"default": ''
|
|
123477
|
+
},
|
|
123478
|
+
// 导出方法:函数直接调用,字符串则沿父组件链查找同名方法
|
|
123479
|
+
exportMethod: {
|
|
123480
|
+
type: [Function, String],
|
|
123481
|
+
"default": ''
|
|
123482
|
+
},
|
|
123483
|
+
// 是否显示导出按钮,默认不显示
|
|
123484
|
+
showExport: {
|
|
123485
|
+
type: Boolean,
|
|
123486
|
+
"default": false
|
|
123487
|
+
},
|
|
123488
|
+
// 查询按钮加载态
|
|
123489
|
+
loading: {
|
|
123490
|
+
type: Boolean,
|
|
123491
|
+
"default": false
|
|
123492
|
+
}
|
|
123493
|
+
},
|
|
123494
|
+
data: function data() {
|
|
123495
|
+
return {
|
|
123496
|
+
// 未确认父级前先渲染,挂载后若不在 toolbar-right 内再隐藏,避免正确用法被误伤
|
|
123497
|
+
placedCorrectly: true,
|
|
123498
|
+
keyword: this.value == null ? '' : String(this.value)
|
|
123499
|
+
};
|
|
123500
|
+
},
|
|
123501
|
+
watch: {
|
|
123502
|
+
value: function value(val) {
|
|
123503
|
+
this.keyword = val == null ? '' : String(val);
|
|
123504
|
+
}
|
|
123505
|
+
},
|
|
123506
|
+
mounted: function mounted() {
|
|
123507
|
+
this.validatePlacement();
|
|
123508
|
+
},
|
|
123509
|
+
methods: {
|
|
123510
|
+
// 沿父组件链查找 StandardToolbarRight(插槽内容的 $parent 为实际渲染它的组件)
|
|
123511
|
+
findToolbarRight: function findToolbarRight() {
|
|
123512
|
+
var parent = this.$parent;
|
|
123513
|
+
while (parent) {
|
|
123514
|
+
if (parent.$options && parent.$options.name === 'StandardToolbarRight') return parent;
|
|
123515
|
+
parent = parent.$parent;
|
|
123516
|
+
}
|
|
123517
|
+
return null;
|
|
123518
|
+
},
|
|
123519
|
+
// 父组件链与 DOM 宿主双重确认:任一命中即视为放在 standard-toolbar-right 内
|
|
123520
|
+
validatePlacement: function validatePlacement() {
|
|
123521
|
+
var el = this.$el;
|
|
123522
|
+
var byDom = !!(el && el.nodeType === 1 && el.parentElement && el.parentElement.closest('.standard-toolbar-right'));
|
|
123523
|
+
if (this.findToolbarRight() || byDom) return;
|
|
123524
|
+
this.placedCorrectly = false;
|
|
123525
|
+
console.warn('[StandardToolbarQuery] 只能放在 standard-toolbar-right 内部');
|
|
123526
|
+
},
|
|
123527
|
+
onInput: function onInput(val) {
|
|
123528
|
+
this.keyword = val == null ? '' : String(val);
|
|
123529
|
+
this.$emit('input', this.keyword);
|
|
123530
|
+
},
|
|
123531
|
+
// method 为函数时直接调用;为字符串时沿父组件链查找同名方法
|
|
123532
|
+
invokeMethod: function invokeMethod(method, keyword) {
|
|
123533
|
+
if (typeof method === 'function') {
|
|
123534
|
+
method(keyword);
|
|
123535
|
+
return;
|
|
123536
|
+
}
|
|
123537
|
+
if (typeof method === 'string' && method) {
|
|
123538
|
+
var parent = this.$parent;
|
|
123539
|
+
while (parent) {
|
|
123540
|
+
if (typeof parent[method] === 'function') {
|
|
123541
|
+
parent[method](keyword);
|
|
123542
|
+
return;
|
|
123543
|
+
}
|
|
123544
|
+
parent = parent.$parent;
|
|
123545
|
+
}
|
|
123546
|
+
console.warn("[StandardToolbarQuery] \u672A\u627E\u5230\u65B9\u6CD5 ".concat(method));
|
|
123547
|
+
}
|
|
123548
|
+
},
|
|
123549
|
+
onQuery: function onQuery() {
|
|
123550
|
+
var keyword = this.keyword;
|
|
123551
|
+
this.invokeMethod(this.queryMethod, keyword);
|
|
123552
|
+
this.$emit('query', keyword);
|
|
123553
|
+
},
|
|
123554
|
+
onExport: function onExport() {
|
|
123555
|
+
var keyword = this.keyword;
|
|
123556
|
+
this.invokeMethod(this.exportMethod, keyword);
|
|
123557
|
+
this.$emit('export', keyword);
|
|
123558
|
+
}
|
|
123559
|
+
}
|
|
123560
|
+
});
|
|
123561
|
+
;// ./src/components/StandardTable/ToolbarQuery.vue?vue&type=script&lang=js
|
|
123562
|
+
/* harmony default export */ const StandardTable_ToolbarQueryvue_type_script_lang_js = (ToolbarQueryvue_type_script_lang_js);
|
|
123563
|
+
;// ./src/components/StandardTable/ToolbarQuery.vue
|
|
123564
|
+
|
|
123565
|
+
|
|
123566
|
+
|
|
123567
|
+
|
|
123568
|
+
|
|
123569
|
+
/* normalize component */
|
|
123570
|
+
;
|
|
123571
|
+
var ToolbarQuery_component = normalizeComponent(
|
|
123572
|
+
StandardTable_ToolbarQueryvue_type_script_lang_js,
|
|
123573
|
+
ToolbarQueryvue_type_template_id_2b616fae_render,
|
|
123574
|
+
ToolbarQueryvue_type_template_id_2b616fae_staticRenderFns,
|
|
123575
|
+
false,
|
|
123576
|
+
null,
|
|
123577
|
+
null,
|
|
123578
|
+
null
|
|
123579
|
+
|
|
123580
|
+
)
|
|
123581
|
+
|
|
123582
|
+
/* harmony default export */ const ToolbarQuery = (ToolbarQuery_component.exports);
|
|
123368
123583
|
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-82.use[1]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/StandardTable/FooterLeft.vue?vue&type=script&lang=js
|
|
123369
123584
|
/**
|
|
123370
123585
|
* 底部栏左侧子组件(单标签组件):
|
|
@@ -123546,6 +123761,7 @@ var FooterRight_component = normalizeComponent(
|
|
|
123546
123761
|
* 'standard-column': StandardTable.Column,
|
|
123547
123762
|
* 'standard-toolbar-left': StandardTable.ToolbarLeft,
|
|
123548
123763
|
* 'standard-toolbar-right': StandardTable.ToolbarRight,
|
|
123764
|
+
* 'standard-toolbar-query': StandardTable.ToolbarQuery,
|
|
123549
123765
|
* 'standard-footer-left': StandardTable.FooterLeft,
|
|
123550
123766
|
* 'standard-footer-right': StandardTable.FooterRight,
|
|
123551
123767
|
* 'standard-footer-empty': StandardTable.FooterEmpty,
|
|
@@ -123567,10 +123783,12 @@ var FooterRight_component = normalizeComponent(
|
|
|
123567
123783
|
|
|
123568
123784
|
|
|
123569
123785
|
|
|
123786
|
+
|
|
123570
123787
|
// 将各子组件挂载为静态属性,方便引用方统一引入注册
|
|
123571
123788
|
StandardTable.Column = Column;
|
|
123572
123789
|
StandardTable.ToolbarLeft = ToolbarLeft;
|
|
123573
123790
|
StandardTable.ToolbarRight = ToolbarRight;
|
|
123791
|
+
StandardTable.ToolbarQuery = ToolbarQuery;
|
|
123574
123792
|
StandardTable.FooterLeft = FooterLeft;
|
|
123575
123793
|
StandardTable.FooterRight = FooterRight;
|
|
123576
123794
|
StandardTable.FooterEmpty = FooterEmpty;
|
|
@@ -123582,6 +123800,7 @@ StandardTable.install = function (Vue) {
|
|
|
123582
123800
|
Vue.component(Column.name, Column);
|
|
123583
123801
|
Vue.component(ToolbarLeft.name, ToolbarLeft);
|
|
123584
123802
|
Vue.component(ToolbarRight.name, ToolbarRight);
|
|
123803
|
+
Vue.component(ToolbarQuery.name, ToolbarQuery);
|
|
123585
123804
|
Vue.component(FooterLeft.name, FooterLeft);
|
|
123586
123805
|
Vue.component(FooterRight.name, FooterRight);
|
|
123587
123806
|
Vue.component(FooterEmpty.name, FooterEmpty);
|