@weitutech/by-components 1.1.45 → 1.1.47
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/lib/by-components.common.js +322 -24
- package/lib/by-components.umd.js +322 -24
- package/lib/by-components.umd.min.js +13 -13
- package/package.json +1 -1
|
@@ -60535,7 +60535,7 @@ if (typeof window !== 'undefined') {
|
|
|
60535
60535
|
var es_iterator_constructor = __webpack_require__(8111);
|
|
60536
60536
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.for-each.js
|
|
60537
60537
|
var es_iterator_for_each = __webpack_require__(7588);
|
|
60538
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
60538
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/pager/index.vue?vue&type=template&id=43bb822c
|
|
60539
60539
|
var render = function render() {
|
|
60540
60540
|
var _vm = this,
|
|
60541
60541
|
_c = _vm._self._c;
|
|
@@ -60742,8 +60742,8 @@ var component = normalizeComponent(
|
|
|
60742
60742
|
)
|
|
60743
60743
|
|
|
60744
60744
|
/* harmony default export */ var pager = (component.exports);
|
|
60745
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
60746
|
-
var
|
|
60745
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/table/index.vue?vue&type=template&id=45d515ca
|
|
60746
|
+
var tablevue_type_template_id_45d515ca_render = function render() {
|
|
60747
60747
|
var _vm = this,
|
|
60748
60748
|
_c = _vm._self._c;
|
|
60749
60749
|
return _c('div', [_c('vxe-grid', _vm._g(_vm._b({
|
|
@@ -60817,7 +60817,7 @@ var tablevue_type_template_id_4926859a_render = function render() {
|
|
|
60817
60817
|
}
|
|
60818
60818
|
}) : _vm._e()], 1);
|
|
60819
60819
|
};
|
|
60820
|
-
var
|
|
60820
|
+
var tablevue_type_template_id_45d515ca_staticRenderFns = [];
|
|
60821
60821
|
|
|
60822
60822
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
|
|
60823
60823
|
var es_array_push = __webpack_require__(4114);
|
|
@@ -60837,7 +60837,7 @@ var es_set_is_superset_of_v2 = __webpack_require__(2475);
|
|
|
60837
60837
|
var es_set_symmetric_difference_v2 = __webpack_require__(5024);
|
|
60838
60838
|
// EXTERNAL MODULE: ./node_modules/core-js/modules/es.set.union.v2.js
|
|
60839
60839
|
var es_set_union_v2 = __webpack_require__(1698);
|
|
60840
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
60840
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/custom-column/index.vue?vue&type=template&id=22c5acce
|
|
60841
60841
|
var custom_columnvue_type_template_id_22c5acce_render = function render() {
|
|
60842
60842
|
var _vm = this,
|
|
60843
60843
|
_c = _vm._self._c;
|
|
@@ -61386,6 +61386,26 @@ const resetFixedColumns = (cols, fixed_max_count = 6) => {
|
|
|
61386
61386
|
return cols;
|
|
61387
61387
|
};
|
|
61388
61388
|
|
|
61389
|
+
// 判空
|
|
61390
|
+
const isNullValue = value => {
|
|
61391
|
+
if (value === null || value === undefined) {
|
|
61392
|
+
return true;
|
|
61393
|
+
}
|
|
61394
|
+
if (Number.isNaN(value)) {
|
|
61395
|
+
return true;
|
|
61396
|
+
}
|
|
61397
|
+
if (value === '' || value === 0) {
|
|
61398
|
+
return true;
|
|
61399
|
+
}
|
|
61400
|
+
if (typeof value === 'object' && Object.keys(value).length === 0) {
|
|
61401
|
+
return true;
|
|
61402
|
+
}
|
|
61403
|
+
if (Array.isArray(value) && value.length === 0) {
|
|
61404
|
+
return true;
|
|
61405
|
+
}
|
|
61406
|
+
return false;
|
|
61407
|
+
};
|
|
61408
|
+
|
|
61389
61409
|
;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/custom-column/index.vue?vue&type=script&lang=js
|
|
61390
61410
|
|
|
61391
61411
|
|
|
@@ -61726,6 +61746,35 @@ var custom_column_component = normalizeComponent(
|
|
|
61726
61746
|
CustomColumn: custom_column
|
|
61727
61747
|
},
|
|
61728
61748
|
props: {
|
|
61749
|
+
/**
|
|
61750
|
+
* 表格配置项
|
|
61751
|
+
* @property {Object} pagerConfig - 分页配置
|
|
61752
|
+
* @property {number} pagerConfig.currentPage - 当前页码
|
|
61753
|
+
* @property {number} pagerConfig.pageSize - 每页条数
|
|
61754
|
+
* @property {number} pagerConfig.total - 总条数
|
|
61755
|
+
* @property {number[]} pagerConfig.pageSizes - 每页条数选项
|
|
61756
|
+
* @property {boolean} pagerConfig.frontendPagination - 是否启用前端分页
|
|
61757
|
+
* @property {Array} columns - 表格列配置
|
|
61758
|
+
* @property {Object} customColumnConfig - 自定义列配置
|
|
61759
|
+
* @property {boolean} customColumnConfig.showCustomColumn - 是否显示自定义列按钮
|
|
61760
|
+
* @property {Function} customColumnConfig.infoMethod - 获取自定义列信息的方法
|
|
61761
|
+
* @property {Function} customColumnConfig.submitMethod - 提交自定义列配置的方法
|
|
61762
|
+
* @property {number} customColumnConfig.fixedMaxCount - 固定列最大数量
|
|
61763
|
+
* @property {Array} customColumnConfig.slots - 自定义插槽配置
|
|
61764
|
+
* @property {Object} resizableConfig - 列宽调整配置
|
|
61765
|
+
* @property {number} resizableConfig.minWidth - 最小列宽
|
|
61766
|
+
* @property {Object} rowConfig - 行配置
|
|
61767
|
+
* @property {number} rowConfig.height - 行高
|
|
61768
|
+
* @property {boolean} rowConfig.isHover - 是否显示hover效果
|
|
61769
|
+
* @property {Object} sortConfig - 排序配置
|
|
61770
|
+
* @property {boolean} sortConfig.remote - 是否远程排序
|
|
61771
|
+
* @property {string} sortConfig.trigger - 排序触发方式
|
|
61772
|
+
* @property {boolean} sortConfig.frontendSort - 是否启用前端排序
|
|
61773
|
+
* @property {Array} copyFields - 可复制字段列表
|
|
61774
|
+
* @property {string} emptyText - 空数据提示文本
|
|
61775
|
+
* @property {Object} loadingConfig - 加载配置
|
|
61776
|
+
* @property {string} loadingConfig.text - 加载提示文本
|
|
61777
|
+
*/
|
|
61729
61778
|
gridOptions: {
|
|
61730
61779
|
type: Object,
|
|
61731
61780
|
default: () => ({})
|
|
@@ -61755,7 +61804,15 @@ var custom_column_component = normalizeComponent(
|
|
|
61755
61804
|
hasCache: false,
|
|
61756
61805
|
// 原始列配置
|
|
61757
61806
|
originColumns: [],
|
|
61758
|
-
tempColumns: []
|
|
61807
|
+
tempColumns: [],
|
|
61808
|
+
// 存储所有数据(用于前端分页)
|
|
61809
|
+
allData: [],
|
|
61810
|
+
// 排序状态
|
|
61811
|
+
sortState: {
|
|
61812
|
+
field: null,
|
|
61813
|
+
order: null
|
|
61814
|
+
},
|
|
61815
|
+
tableLoading: false
|
|
61759
61816
|
};
|
|
61760
61817
|
},
|
|
61761
61818
|
mounted() {
|
|
@@ -61771,10 +61828,37 @@ var custom_column_component = normalizeComponent(
|
|
|
61771
61828
|
this.originColumns = result;
|
|
61772
61829
|
},
|
|
61773
61830
|
deep: true
|
|
61831
|
+
},
|
|
61832
|
+
'gridOptions.data': {
|
|
61833
|
+
handler() {
|
|
61834
|
+
this.$nextTick(() => {
|
|
61835
|
+
setTimeout(() => {
|
|
61836
|
+
if (this.$refs.xGrid && this.$refs.xGrid.refreshScroll) {
|
|
61837
|
+
this.$refs.xGrid.refreshScroll(); // 刷新滚动布局
|
|
61838
|
+
}
|
|
61839
|
+
if (this.$refs.xGrid && this.$refs.xGrid.scrollTo) {
|
|
61840
|
+
this.$refs.xGrid.scrollTo({
|
|
61841
|
+
top: 0,
|
|
61842
|
+
left: 0
|
|
61843
|
+
});
|
|
61844
|
+
}
|
|
61845
|
+
// 数据变化后恢复排序高亮
|
|
61846
|
+
if (this.sortState.field && this.sortState.order && this.$refs.xGrid) {
|
|
61847
|
+
setTimeout(() => {
|
|
61848
|
+
this.$refs.xGrid.sort(this.sortState.field, this.sortState.order, {
|
|
61849
|
+
silent: true
|
|
61850
|
+
});
|
|
61851
|
+
}, 100);
|
|
61852
|
+
}
|
|
61853
|
+
}, 0);
|
|
61854
|
+
});
|
|
61855
|
+
},
|
|
61856
|
+
deep: true
|
|
61774
61857
|
}
|
|
61775
61858
|
},
|
|
61776
61859
|
computed: {
|
|
61777
61860
|
options() {
|
|
61861
|
+
var _others$pagerConfig, _others$sortConfig, _others$pagerConfig2, _others$pagerConfig3, _others$sortConfig2;
|
|
61778
61862
|
const {
|
|
61779
61863
|
customColumnConfig,
|
|
61780
61864
|
columns,
|
|
@@ -61787,21 +61871,49 @@ var custom_column_component = normalizeComponent(
|
|
|
61787
61871
|
// 使用列宽缓存值(若有)
|
|
61788
61872
|
const newColumns = replaceColumnWidthToColumns(this.name, columns);
|
|
61789
61873
|
this.setHasCache();
|
|
61874
|
+
|
|
61875
|
+
// 处理前端分页
|
|
61876
|
+
let data = others.data || [];
|
|
61877
|
+
if ((_others$pagerConfig = others.pagerConfig) !== null && _others$pagerConfig !== void 0 && _others$pagerConfig.frontendPagination || (_others$sortConfig = others.sortConfig) !== null && _others$sortConfig !== void 0 && _others$sortConfig.frontendSort) {
|
|
61878
|
+
// 保存完整数据
|
|
61879
|
+
this.allData = [...data];
|
|
61880
|
+
}
|
|
61881
|
+
if ((_others$pagerConfig2 = others.pagerConfig) !== null && _others$pagerConfig2 !== void 0 && _others$pagerConfig2.frontendPagination) {
|
|
61882
|
+
// 截取当前页数据
|
|
61883
|
+
data = this.spliteListData(this.allData, others.pagerConfig.currentPage, others.pagerConfig.pageSize);
|
|
61884
|
+
}
|
|
61885
|
+
|
|
61886
|
+
// 移除 others 中的 data,避免覆盖
|
|
61887
|
+
const {
|
|
61888
|
+
data: _,
|
|
61889
|
+
sortConfig,
|
|
61890
|
+
...otherConfigs
|
|
61891
|
+
} = others;
|
|
61892
|
+
const userSeqConfig = this.gridOptions.seqConfig || {};
|
|
61893
|
+
const specialFirstRow = this.specialFirstRow(this.allData);
|
|
61894
|
+
|
|
61895
|
+
// 序号
|
|
61896
|
+
const defaultSeqMethod = ({
|
|
61897
|
+
rowIndex
|
|
61898
|
+
}) => {
|
|
61899
|
+
return specialFirstRow ? rowIndex : rowIndex + 1;
|
|
61900
|
+
};
|
|
61790
61901
|
return {
|
|
61902
|
+
...otherConfigs,
|
|
61791
61903
|
border: true,
|
|
61792
61904
|
resizable: true,
|
|
61793
61905
|
showOverflow: !this.autoHeight,
|
|
61794
|
-
// 行高自动撑高
|
|
61795
61906
|
height: 550,
|
|
61796
61907
|
align: 'left',
|
|
61797
61908
|
copyFields: [],
|
|
61798
|
-
pagerConfig:
|
|
61909
|
+
// pagerConfig: pagerConfig,
|
|
61799
61910
|
emptyText: '暂无数据',
|
|
61911
|
+
loading: this.tableLoading,
|
|
61800
61912
|
loadingConfig: {
|
|
61801
61913
|
text: '加载中...'
|
|
61802
61914
|
},
|
|
61803
61915
|
columns: newColumns,
|
|
61804
|
-
|
|
61916
|
+
data,
|
|
61805
61917
|
resizableConfig: {
|
|
61806
61918
|
minWidth: 50,
|
|
61807
61919
|
...this.gridOptions.resizableConfig
|
|
@@ -61812,9 +61924,16 @@ var custom_column_component = normalizeComponent(
|
|
|
61812
61924
|
...this.gridOptions.rowConfig
|
|
61813
61925
|
},
|
|
61814
61926
|
sortConfig: {
|
|
61815
|
-
|
|
61927
|
+
...sortConfig,
|
|
61928
|
+
// 只在前端排序/分页时强制 remote: true
|
|
61929
|
+
// 其他情况保持外部配置
|
|
61930
|
+
remote: (_others$pagerConfig3 = others.pagerConfig) !== null && _others$pagerConfig3 !== void 0 && _others$pagerConfig3.frontendPagination || (_others$sortConfig2 = others.sortConfig) !== null && _others$sortConfig2 !== void 0 && _others$sortConfig2.frontendSort ? true : sortConfig === null || sortConfig === void 0 ? void 0 : sortConfig.remote,
|
|
61816
61931
|
trigger: 'cell',
|
|
61817
61932
|
...this.gridOptions.sortConfig
|
|
61933
|
+
},
|
|
61934
|
+
seqConfig: {
|
|
61935
|
+
...userSeqConfig,
|
|
61936
|
+
seqMethod: userSeqConfig.seqMethod || defaultSeqMethod
|
|
61818
61937
|
}
|
|
61819
61938
|
};
|
|
61820
61939
|
},
|
|
@@ -61830,7 +61949,11 @@ var custom_column_component = normalizeComponent(
|
|
|
61830
61949
|
eventListeners() {
|
|
61831
61950
|
const listeners = {};
|
|
61832
61951
|
this.events.forEach(eventName => {
|
|
61833
|
-
|
|
61952
|
+
if (eventName === 'sort-change') {
|
|
61953
|
+
listeners[eventName] = event => this.handleSortChange(event);
|
|
61954
|
+
} else {
|
|
61955
|
+
listeners[eventName] = event => this.$emit(eventName, event);
|
|
61956
|
+
}
|
|
61834
61957
|
});
|
|
61835
61958
|
return listeners;
|
|
61836
61959
|
}
|
|
@@ -61862,12 +61985,40 @@ var custom_column_component = normalizeComponent(
|
|
|
61862
61985
|
this.$refs.xGrid.reloadColumn(this.originColumns);
|
|
61863
61986
|
}
|
|
61864
61987
|
},
|
|
61988
|
+
/**
|
|
61989
|
+
* 分页变化
|
|
61990
|
+
* @param values 分页参数
|
|
61991
|
+
*/
|
|
61865
61992
|
pageChange(values) {
|
|
61866
|
-
|
|
61867
|
-
|
|
61868
|
-
|
|
61993
|
+
var _this$gridOptions$pag;
|
|
61994
|
+
// 前端分页
|
|
61995
|
+
if ((_this$gridOptions$pag = this.gridOptions.pagerConfig) !== null && _this$gridOptions$pag !== void 0 && _this$gridOptions$pag.frontendPagination) {
|
|
61996
|
+
setTimeout(() => {
|
|
61997
|
+
const newData = this.spliteListData(this.allData, values.page, values.limit);
|
|
61998
|
+
this.$refs.xGrid.reloadData(newData);
|
|
61999
|
+
this.$nextTick(() => {
|
|
62000
|
+
// 分页后恢复排序高亮
|
|
62001
|
+
if (this.sortState.field && this.sortState.order && this.$refs.xGrid) {
|
|
62002
|
+
setTimeout(() => {
|
|
62003
|
+
this.$refs.xGrid.sort(this.sortState.field, this.sortState.order, {
|
|
62004
|
+
silent: true
|
|
62005
|
+
});
|
|
62006
|
+
}, 100);
|
|
62007
|
+
}
|
|
62008
|
+
});
|
|
62009
|
+
setTimeout(() => {
|
|
62010
|
+
if (this.$refs.xGrid) {
|
|
62011
|
+
this.$refs.xGrid.scrollTo(0, 0);
|
|
62012
|
+
}
|
|
62013
|
+
}, 0);
|
|
62014
|
+
}, 0);
|
|
62015
|
+
} else {
|
|
62016
|
+
if (this.$refs.xGrid) {
|
|
62017
|
+
this.$refs.xGrid.scrollTo(0, 0);
|
|
62018
|
+
}
|
|
62019
|
+
// 只有在后端分页模式下才触发page-change事件
|
|
62020
|
+
this.$emit('page-change', values);
|
|
61869
62021
|
}
|
|
61870
|
-
this.$emit('page-change', values);
|
|
61871
62022
|
},
|
|
61872
62023
|
copy(text) {
|
|
61873
62024
|
const oInput = document.createElement('input');
|
|
@@ -61962,6 +62113,153 @@ var custom_column_component = normalizeComponent(
|
|
|
61962
62113
|
// 关闭自定义表头弹框
|
|
61963
62114
|
closeCustomColumnDialog() {
|
|
61964
62115
|
this.customTableVisible = false;
|
|
62116
|
+
},
|
|
62117
|
+
/**
|
|
62118
|
+
* 获取特殊的第一条数据
|
|
62119
|
+
* @param allData 数据
|
|
62120
|
+
* @returns 特殊的第一条数据
|
|
62121
|
+
*/
|
|
62122
|
+
specialFirstRow(allData) {
|
|
62123
|
+
const firstRow = allData && allData[0];
|
|
62124
|
+
return firstRow && typeof firstRow === 'object' && isNullValue(firstRow.id) ? firstRow : null;
|
|
62125
|
+
},
|
|
62126
|
+
/**
|
|
62127
|
+
* 获取当前页显示数据
|
|
62128
|
+
* 1、前端分页:获取当前页截取后并排序后的数据
|
|
62129
|
+
* 2、虚拟滚动+前端排序:获取排序后的全部数据
|
|
62130
|
+
* @param allData
|
|
62131
|
+
* @param currentPage
|
|
62132
|
+
* @param pageSize
|
|
62133
|
+
*/
|
|
62134
|
+
spliteListData(allData, currentPage, pageSize) {
|
|
62135
|
+
if (!Array.isArray(allData) || allData.length === 0) {
|
|
62136
|
+
return [];
|
|
62137
|
+
}
|
|
62138
|
+
|
|
62139
|
+
// 检查第一条数据是否需要特殊处理 (如果未分页,则返回排序后的全部)
|
|
62140
|
+
const specialFirstRow = this.specialFirstRow(allData);
|
|
62141
|
+
|
|
62142
|
+
// 获取实际需要分页的数据(排除特殊的第一条)
|
|
62143
|
+
let normalData = specialFirstRow ? allData.slice(1) : allData;
|
|
62144
|
+
|
|
62145
|
+
// 如果有排序状态,先对数据进行排序
|
|
62146
|
+
if (this.sortState.field && this.sortState.order) {
|
|
62147
|
+
normalData = this.sortData(normalData, this.sortState.field, this.sortState.order);
|
|
62148
|
+
}
|
|
62149
|
+
let currentPageData = [];
|
|
62150
|
+
if (currentPage && pageSize) {
|
|
62151
|
+
const start = (currentPage - 1) * pageSize;
|
|
62152
|
+
const end = start + pageSize;
|
|
62153
|
+
|
|
62154
|
+
// 更新分页配置
|
|
62155
|
+
this.gridOptions.pagerConfig.currentPage = currentPage;
|
|
62156
|
+
this.gridOptions.pagerConfig.pageSize = pageSize;
|
|
62157
|
+
this.gridOptions.pagerConfig.total = allData.length;
|
|
62158
|
+
|
|
62159
|
+
// 获取当前页数据
|
|
62160
|
+
currentPageData = normalData.slice(start, end);
|
|
62161
|
+
} else {
|
|
62162
|
+
currentPageData = normalData;
|
|
62163
|
+
}
|
|
62164
|
+
|
|
62165
|
+
// 如果有特殊的第一条数据,添加到当前页数据的开头
|
|
62166
|
+
if (specialFirstRow) {
|
|
62167
|
+
currentPageData = [specialFirstRow, ...currentPageData];
|
|
62168
|
+
}
|
|
62169
|
+
return currentPageData;
|
|
62170
|
+
},
|
|
62171
|
+
/**
|
|
62172
|
+
* 排序数据
|
|
62173
|
+
* @param data 数据
|
|
62174
|
+
* @param field 字段
|
|
62175
|
+
* @param order 排序方式
|
|
62176
|
+
*/
|
|
62177
|
+
sortData(data, field, order) {
|
|
62178
|
+
if (!field || !order) return data;
|
|
62179
|
+
return [...data].sort((a, b) => {
|
|
62180
|
+
let aValue = a[field];
|
|
62181
|
+
let bValue = b[field];
|
|
62182
|
+
|
|
62183
|
+
// 处理null和undefined值
|
|
62184
|
+
if (aValue === null || aValue === undefined) aValue = '';
|
|
62185
|
+
if (bValue === null || bValue === undefined) bValue = '';
|
|
62186
|
+
|
|
62187
|
+
// 数字类型排序
|
|
62188
|
+
if (typeof aValue === 'number' && typeof bValue === 'number') {
|
|
62189
|
+
return order === 'asc' ? aValue - bValue : bValue - aValue;
|
|
62190
|
+
}
|
|
62191
|
+
|
|
62192
|
+
// 字符串类型排序
|
|
62193
|
+
const aStr = String(aValue).toLowerCase();
|
|
62194
|
+
const bStr = String(bValue).toLowerCase();
|
|
62195
|
+
if (order === 'asc') {
|
|
62196
|
+
return aStr.localeCompare(bStr);
|
|
62197
|
+
} else {
|
|
62198
|
+
return bStr.localeCompare(aStr);
|
|
62199
|
+
}
|
|
62200
|
+
});
|
|
62201
|
+
},
|
|
62202
|
+
/**
|
|
62203
|
+
* 处理排序变化
|
|
62204
|
+
* @param event
|
|
62205
|
+
*/
|
|
62206
|
+
handleSortChange(event) {
|
|
62207
|
+
var _this$gridOptions$pag2, _this$gridOptions$sor;
|
|
62208
|
+
const {
|
|
62209
|
+
property,
|
|
62210
|
+
order
|
|
62211
|
+
} = event;
|
|
62212
|
+
const shouldHandleSort = ((_this$gridOptions$pag2 = this.gridOptions.pagerConfig) === null || _this$gridOptions$pag2 === void 0 ? void 0 : _this$gridOptions$pag2.frontendPagination) || ((_this$gridOptions$sor = this.gridOptions.sortConfig) === null || _this$gridOptions$sor === void 0 ? void 0 : _this$gridOptions$sor.frontendSort);
|
|
62213
|
+
if (shouldHandleSort) {
|
|
62214
|
+
var _this$gridOptions$pag3, _this$gridOptions$pag4;
|
|
62215
|
+
this.sortState.field = property;
|
|
62216
|
+
this.sortState.order = order;
|
|
62217
|
+
const newData = this.spliteListData(this.allData, (_this$gridOptions$pag3 = this.gridOptions.pagerConfig) !== null && _this$gridOptions$pag3 !== void 0 && _this$gridOptions$pag3.frontendPagination ? this.gridOptions.pagerConfig.currentPage : null, (_this$gridOptions$pag4 = this.gridOptions.pagerConfig) !== null && _this$gridOptions$pag4 !== void 0 && _this$gridOptions$pag4.frontendPagination ? this.gridOptions.pagerConfig.pageSize : null);
|
|
62218
|
+
if (this.$refs.xGrid) {
|
|
62219
|
+
this.$refs.xGrid.reloadData(newData);
|
|
62220
|
+
this.$nextTick(() => {
|
|
62221
|
+
if (property && order) {
|
|
62222
|
+
setTimeout(() => {
|
|
62223
|
+
// 只高亮箭头,表格内部不排序(因为数据已经排序好)
|
|
62224
|
+
this.$refs.xGrid.sort(property, order, {
|
|
62225
|
+
silent: true
|
|
62226
|
+
});
|
|
62227
|
+
}, 100);
|
|
62228
|
+
}
|
|
62229
|
+
setTimeout(() => {
|
|
62230
|
+
var _this$gridOptions$pag5;
|
|
62231
|
+
if ((_this$gridOptions$pag5 = this.gridOptions.pagerConfig) !== null && _this$gridOptions$pag5 !== void 0 && _this$gridOptions$pag5.frontendPagination && this.$refs.xGrid) {
|
|
62232
|
+
// 前端分页时,排序状态变化,回到第一页
|
|
62233
|
+
const currentPage = this.gridOptions.pagerConfig.currentPage;
|
|
62234
|
+
if (currentPage !== 1) {
|
|
62235
|
+
// 触发分页事件回到第一页
|
|
62236
|
+
this.pageChange({
|
|
62237
|
+
page: 1,
|
|
62238
|
+
limit: this.gridOptions.pagerConfig.pageSize
|
|
62239
|
+
});
|
|
62240
|
+
} else {
|
|
62241
|
+
// 已经在第一页,直接滚动到顶部
|
|
62242
|
+
this.$refs.xGrid.scrollTo(0, 0);
|
|
62243
|
+
}
|
|
62244
|
+
}
|
|
62245
|
+
}, 0);
|
|
62246
|
+
});
|
|
62247
|
+
}
|
|
62248
|
+
}
|
|
62249
|
+
this.$emit('sort-change', event);
|
|
62250
|
+
},
|
|
62251
|
+
/**
|
|
62252
|
+
* 重置排序状态
|
|
62253
|
+
*/
|
|
62254
|
+
resetSortState() {
|
|
62255
|
+
// 重置排序状态
|
|
62256
|
+
this.sortState.field = null;
|
|
62257
|
+
this.sortState.order = null;
|
|
62258
|
+
setTimeout(() => {
|
|
62259
|
+
this.$refs.xGrid.sort(this.sortState.field, this.sortState.order, {
|
|
62260
|
+
silent: true
|
|
62261
|
+
});
|
|
62262
|
+
}, 100);
|
|
61965
62263
|
}
|
|
61966
62264
|
}
|
|
61967
62265
|
});
|
|
@@ -61977,8 +62275,8 @@ var custom_column_component = normalizeComponent(
|
|
|
61977
62275
|
;
|
|
61978
62276
|
var table_component = normalizeComponent(
|
|
61979
62277
|
components_tablevue_type_script_lang_js,
|
|
61980
|
-
|
|
61981
|
-
|
|
62278
|
+
tablevue_type_template_id_45d515ca_render,
|
|
62279
|
+
tablevue_type_template_id_45d515ca_staticRenderFns,
|
|
61982
62280
|
false,
|
|
61983
62281
|
null,
|
|
61984
62282
|
null,
|
|
@@ -61987,7 +62285,7 @@ var table_component = normalizeComponent(
|
|
|
61987
62285
|
)
|
|
61988
62286
|
|
|
61989
62287
|
/* harmony default export */ var table = (table_component.exports);
|
|
61990
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
62288
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/form.vue?vue&type=template&id=f2397dbe&scoped=true
|
|
61991
62289
|
var formvue_type_template_id_f2397dbe_scoped_true_render = function render() {
|
|
61992
62290
|
var _vm = this,
|
|
61993
62291
|
_c = _vm._self._c;
|
|
@@ -62267,7 +62565,7 @@ var formvue_type_template_id_f2397dbe_scoped_true_render = function render() {
|
|
|
62267
62565
|
};
|
|
62268
62566
|
var formvue_type_template_id_f2397dbe_scoped_true_staticRenderFns = [];
|
|
62269
62567
|
|
|
62270
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
62568
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/pair-number-input.vue?vue&type=template&id=3344cc16
|
|
62271
62569
|
var pair_number_inputvue_type_template_id_3344cc16_render = function render() {
|
|
62272
62570
|
var _vm = this,
|
|
62273
62571
|
_c = _vm._self._c;
|
|
@@ -62371,7 +62669,7 @@ var pair_number_input_component = normalizeComponent(
|
|
|
62371
62669
|
)
|
|
62372
62670
|
|
|
62373
62671
|
/* harmony default export */ var pair_number_input = (pair_number_input_component.exports);
|
|
62374
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
62672
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/custom-date-picker.vue?vue&type=template&id=2b63f178
|
|
62375
62673
|
var custom_date_pickervue_type_template_id_2b63f178_render = function render() {
|
|
62376
62674
|
var _vm = this,
|
|
62377
62675
|
_c = _vm._self._c;
|
|
@@ -62786,7 +63084,7 @@ var form_component = normalizeComponent(
|
|
|
62786
63084
|
)
|
|
62787
63085
|
|
|
62788
63086
|
/* harmony default export */ var form_form = (form_component.exports);
|
|
62789
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
63087
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/page-search/page-search.vue?vue&type=template&id=feae5b44
|
|
62790
63088
|
var page_searchvue_type_template_id_feae5b44_render = function render() {
|
|
62791
63089
|
var _vm = this,
|
|
62792
63090
|
_c = _vm._self._c;
|
|
@@ -62956,7 +63254,7 @@ var page_search_component = normalizeComponent(
|
|
|
62956
63254
|
)
|
|
62957
63255
|
|
|
62958
63256
|
/* harmony default export */ var page_search = (page_search_component.exports);
|
|
62959
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
63257
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/fold-search/index.vue?vue&type=template&id=828bc332
|
|
62960
63258
|
var fold_searchvue_type_template_id_828bc332_render = function render() {
|
|
62961
63259
|
var _vm = this,
|
|
62962
63260
|
_c = _vm._self._c;
|
|
@@ -63032,7 +63330,7 @@ var fold_search_component = normalizeComponent(
|
|
|
63032
63330
|
)
|
|
63033
63331
|
|
|
63034
63332
|
/* harmony default export */ var fold_search = (fold_search_component.exports);
|
|
63035
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
63333
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/select.vue?vue&type=template&id=2ee8e5b9
|
|
63036
63334
|
var selectvue_type_template_id_2ee8e5b9_render = function render() {
|
|
63037
63335
|
var _vm = this,
|
|
63038
63336
|
_c = _vm._self._c;
|
|
@@ -63242,7 +63540,7 @@ var select_component = normalizeComponent(
|
|
|
63242
63540
|
)
|
|
63243
63541
|
|
|
63244
63542
|
/* harmony default export */ var comps_select = (select_component.exports);
|
|
63245
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"
|
|
63543
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"268ca57a-vue-loader-template"}!./node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/form/comps/date-picker-range.vue?vue&type=template&id=0ae5d93f
|
|
63246
63544
|
var date_picker_rangevue_type_template_id_0ae5d93f_render = function render() {
|
|
63247
63545
|
var _vm = this,
|
|
63248
63546
|
_c = _vm._self._c;
|