@weitutech/by-components 1.1.69 → 1.1.70
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 +236 -32
- package/lib/by-components.css +1 -1
- package/lib/by-components.umd.js +236 -32
- package/lib/by-components.umd.min.js +9 -9
- package/lib/index.css +1 -1
- package/package.json +1 -1
|
@@ -62393,8 +62393,8 @@ var table_component = normalizeComponent(
|
|
|
62393
62393
|
)
|
|
62394
62394
|
|
|
62395
62395
|
/* harmony default export */ var table = (table_component.exports);
|
|
62396
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7d802f52-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=
|
|
62397
|
-
var
|
|
62396
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7d802f52-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=6681f49c&scoped=true
|
|
62397
|
+
var formvue_type_template_id_6681f49c_scoped_true_render = function render() {
|
|
62398
62398
|
var _vm = this,
|
|
62399
62399
|
_c = _vm._self._c;
|
|
62400
62400
|
return _c('div', {
|
|
@@ -62573,7 +62573,7 @@ var formvue_type_template_id_12f005aa_scoped_true_render = function render() {
|
|
|
62573
62573
|
"batch-input-complete": function ($event) {
|
|
62574
62574
|
return _vm.handleBatchInputComplete($event, item);
|
|
62575
62575
|
},
|
|
62576
|
-
"focus": function ($event) {
|
|
62576
|
+
"batch-selector-focus": function ($event) {
|
|
62577
62577
|
return _vm.handleBatchSelectorFocus($event, item);
|
|
62578
62578
|
}
|
|
62579
62579
|
}
|
|
@@ -62743,7 +62743,7 @@ var formvue_type_template_id_12f005aa_scoped_true_render = function render() {
|
|
|
62743
62743
|
staticClass: "footer"
|
|
62744
62744
|
}, [_vm._t("footer")], 2)], 1);
|
|
62745
62745
|
};
|
|
62746
|
-
var
|
|
62746
|
+
var formvue_type_template_id_6681f49c_scoped_true_staticRenderFns = [];
|
|
62747
62747
|
|
|
62748
62748
|
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7d802f52-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=604235f6
|
|
62749
62749
|
var pair_number_inputvue_type_template_id_604235f6_render = function render() {
|
|
@@ -74200,8 +74200,8 @@ var ByCommonSelector_component = normalizeComponent(
|
|
|
74200
74200
|
)
|
|
74201
74201
|
|
|
74202
74202
|
/* harmony default export */ var ByCommonSelector = (ByCommonSelector_component.exports);
|
|
74203
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7d802f52-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/batch-query-selector/BatchQuerySelector.vue?vue&type=template&id=
|
|
74204
|
-
var
|
|
74203
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7d802f52-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/batch-query-selector/BatchQuerySelector.vue?vue&type=template&id=14840bc6
|
|
74204
|
+
var BatchQuerySelectorvue_type_template_id_14840bc6_render = function render() {
|
|
74205
74205
|
var _vm = this,
|
|
74206
74206
|
_c = _vm._self._c;
|
|
74207
74207
|
return _c('div', {
|
|
@@ -74210,6 +74210,7 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_render = function render() {
|
|
|
74210
74210
|
}, [_c('div', {
|
|
74211
74211
|
staticClass: "selector-container"
|
|
74212
74212
|
}, [_c('el-select', {
|
|
74213
|
+
ref: "elSelect",
|
|
74213
74214
|
staticClass: "selector-input",
|
|
74214
74215
|
attrs: {
|
|
74215
74216
|
"placeholder": _vm.placeholder,
|
|
@@ -74219,11 +74220,13 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_render = function render() {
|
|
|
74219
74220
|
"multiple": _vm.multiple,
|
|
74220
74221
|
"collapse-tags": _vm.collapseTags,
|
|
74221
74222
|
"filterable": "",
|
|
74222
|
-
"loading": _vm.loading
|
|
74223
|
+
"loading": _vm.loading,
|
|
74224
|
+
"filter-method": _vm.filterOptions
|
|
74223
74225
|
},
|
|
74224
74226
|
on: {
|
|
74225
74227
|
"change": _vm.handleChange,
|
|
74226
|
-
"focus": _vm.handleFocus
|
|
74228
|
+
"focus": _vm.handleFocus,
|
|
74229
|
+
"visible-change": _vm.handleDropdownVisibleChange
|
|
74227
74230
|
},
|
|
74228
74231
|
model: {
|
|
74229
74232
|
value: _vm.selectedValues,
|
|
@@ -74232,7 +74235,7 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_render = function render() {
|
|
|
74232
74235
|
},
|
|
74233
74236
|
expression: "selectedValues"
|
|
74234
74237
|
}
|
|
74235
|
-
}, _vm._l(_vm.
|
|
74238
|
+
}, [_vm._l(_vm.visibleOptions, function (item) {
|
|
74236
74239
|
return _c('el-option', {
|
|
74237
74240
|
key: item[_vm.valueKey],
|
|
74238
74241
|
attrs: {
|
|
@@ -74241,7 +74244,26 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_render = function render() {
|
|
|
74241
74244
|
"disabled": _vm.isOptionDisabled(item)
|
|
74242
74245
|
}
|
|
74243
74246
|
});
|
|
74244
|
-
}),
|
|
74247
|
+
}), _vm.hasMoreOptions ? _c('el-option', {
|
|
74248
|
+
staticClass: "load-more-option",
|
|
74249
|
+
attrs: {
|
|
74250
|
+
"disabled": "",
|
|
74251
|
+
"value": "load-more-option",
|
|
74252
|
+
"label": "加载更多..."
|
|
74253
|
+
}
|
|
74254
|
+
}, [_c('div', {
|
|
74255
|
+
staticClass: "load-more-text",
|
|
74256
|
+
on: {
|
|
74257
|
+
"click": function ($event) {
|
|
74258
|
+
$event.stopPropagation();
|
|
74259
|
+
return _vm.loadMoreOptions.apply(null, arguments);
|
|
74260
|
+
}
|
|
74261
|
+
}
|
|
74262
|
+
}, [_vm.loadingMore ? _c('i', {
|
|
74263
|
+
staticClass: "el-icon-loading"
|
|
74264
|
+
}) : _vm._e(), _c('span', [_vm._v(_vm._s(_vm.loadingMore ? '加载中...' : '点击加载更多'))]), _c('div', {
|
|
74265
|
+
staticClass: "load-more-info"
|
|
74266
|
+
}, [_vm._v("已显示 " + _vm._s(_vm.visibleOptions.length) + " / " + _vm._s(_vm.filteredOptions.length) + " 条")])])]) : _vm._e()], 2), _c('el-popover', {
|
|
74245
74267
|
attrs: {
|
|
74246
74268
|
"placement": "bottom-end",
|
|
74247
74269
|
"width": _vm.popoverWidth,
|
|
@@ -74332,7 +74354,7 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_render = function render() {
|
|
|
74332
74354
|
}
|
|
74333
74355
|
})])], 1)], 1)]);
|
|
74334
74356
|
};
|
|
74335
|
-
var
|
|
74357
|
+
var BatchQuerySelectorvue_type_template_id_14840bc6_staticRenderFns = [];
|
|
74336
74358
|
|
|
74337
74359
|
;// ./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/batch-query-selector/BatchQuerySelector.vue?vue&type=script&lang=js
|
|
74338
74360
|
|
|
@@ -74345,6 +74367,7 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74345
74367
|
|
|
74346
74368
|
|
|
74347
74369
|
|
|
74370
|
+
|
|
74348
74371
|
/* harmony default export */ var BatchQuerySelectorvue_type_script_lang_js = ({
|
|
74349
74372
|
name: 'BatchQuerySelector',
|
|
74350
74373
|
props: {
|
|
@@ -74432,6 +74455,16 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74432
74455
|
customMapFunction: {
|
|
74433
74456
|
type: Function,
|
|
74434
74457
|
default: null
|
|
74458
|
+
},
|
|
74459
|
+
// 每页加载数量
|
|
74460
|
+
pageSize: {
|
|
74461
|
+
type: Number,
|
|
74462
|
+
default: 100
|
|
74463
|
+
},
|
|
74464
|
+
// 初始加载页数
|
|
74465
|
+
initialPageCount: {
|
|
74466
|
+
type: Number,
|
|
74467
|
+
default: 1
|
|
74435
74468
|
}
|
|
74436
74469
|
},
|
|
74437
74470
|
data() {
|
|
@@ -74441,8 +74474,15 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74441
74474
|
inputType: 'id',
|
|
74442
74475
|
batchInputContent: '',
|
|
74443
74476
|
optionsList: [],
|
|
74477
|
+
filteredOptions: [],
|
|
74478
|
+
visibleOptions: [],
|
|
74444
74479
|
loading: false,
|
|
74445
|
-
hasLoaded: false
|
|
74480
|
+
hasLoaded: false,
|
|
74481
|
+
keyword: '',
|
|
74482
|
+
debounceTimer: null,
|
|
74483
|
+
dropdownVisible: false,
|
|
74484
|
+
currentPage: 1,
|
|
74485
|
+
loadingMore: false
|
|
74446
74486
|
};
|
|
74447
74487
|
},
|
|
74448
74488
|
computed: {
|
|
@@ -74458,6 +74498,20 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74458
74498
|
return {
|
|
74459
74499
|
maxWidth: width
|
|
74460
74500
|
};
|
|
74501
|
+
},
|
|
74502
|
+
// 选中项的展示
|
|
74503
|
+
selectedOptionsDisplay() {
|
|
74504
|
+
return this.optionsList.filter(item => {
|
|
74505
|
+
if (this.multiple && Array.isArray(this.selectedValues)) {
|
|
74506
|
+
return this.selectedValues.includes(item[this.valueKey]);
|
|
74507
|
+
} else {
|
|
74508
|
+
return this.selectedValues === item[this.valueKey];
|
|
74509
|
+
}
|
|
74510
|
+
});
|
|
74511
|
+
},
|
|
74512
|
+
// 是否还有更多选项
|
|
74513
|
+
hasMoreOptions() {
|
|
74514
|
+
return this.visibleOptions.length < this.filteredOptions.length;
|
|
74461
74515
|
}
|
|
74462
74516
|
},
|
|
74463
74517
|
watch: {
|
|
@@ -74470,8 +74524,24 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74470
74524
|
options: {
|
|
74471
74525
|
handler(val) {
|
|
74472
74526
|
this.optionsList = [...val];
|
|
74527
|
+
this.filteredOptions = [...val];
|
|
74528
|
+
// 初始加载多页数据
|
|
74529
|
+
this.currentPage = this.initialPageCount;
|
|
74530
|
+
this.updateVisibleOptions();
|
|
74473
74531
|
},
|
|
74474
74532
|
immediate: true
|
|
74533
|
+
},
|
|
74534
|
+
keyword(val) {
|
|
74535
|
+
this.filterOptionsByKeyword(val);
|
|
74536
|
+
},
|
|
74537
|
+
dropdownVisible(val) {
|
|
74538
|
+
if (val) {
|
|
74539
|
+
this.$nextTick(() => {
|
|
74540
|
+
this.setupScrollListener();
|
|
74541
|
+
});
|
|
74542
|
+
} else {
|
|
74543
|
+
this.removeScrollListener();
|
|
74544
|
+
}
|
|
74475
74545
|
}
|
|
74476
74546
|
},
|
|
74477
74547
|
created() {
|
|
@@ -74497,12 +74567,81 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74497
74567
|
this.$emit('change', val);
|
|
74498
74568
|
},
|
|
74499
74569
|
// 处理获取焦点
|
|
74500
|
-
handleFocus() {
|
|
74570
|
+
handleFocus(e) {
|
|
74501
74571
|
// 如果配置了自动加载且提供了loadOptions方法,每次获取焦点时都加载数据
|
|
74502
74572
|
if (this.autoLoad && this.loadOptions) {
|
|
74503
74573
|
this.fetchOptions();
|
|
74504
74574
|
}
|
|
74505
|
-
this.$emit('focus');
|
|
74575
|
+
this.$emit('batch-selector-focus', e);
|
|
74576
|
+
},
|
|
74577
|
+
// 处理下拉框显示/隐藏
|
|
74578
|
+
handleDropdownVisibleChange(visible) {
|
|
74579
|
+
this.dropdownVisible = visible;
|
|
74580
|
+
},
|
|
74581
|
+
// 设置滚动监听
|
|
74582
|
+
setupScrollListener() {
|
|
74583
|
+
this.removeScrollListener(); // 先移除之前的监听器
|
|
74584
|
+
|
|
74585
|
+
// 获取el-select-dropdown元素
|
|
74586
|
+
const dropdownEl = document.querySelector('.el-select-dropdown.el-popper');
|
|
74587
|
+
if (!dropdownEl) return;
|
|
74588
|
+
|
|
74589
|
+
// 获取下拉框的滚动容器
|
|
74590
|
+
const scrollContainer = dropdownEl.querySelector('.el-select-dropdown__wrap');
|
|
74591
|
+
if (!scrollContainer) return;
|
|
74592
|
+
|
|
74593
|
+
// 添加滚动监听
|
|
74594
|
+
this.handleScroll = this.createScrollHandler(scrollContainer);
|
|
74595
|
+
scrollContainer.addEventListener('scroll', this.handleScroll);
|
|
74596
|
+
|
|
74597
|
+
// 保存引用,以便后续移除
|
|
74598
|
+
this.scrollContainer = scrollContainer;
|
|
74599
|
+
},
|
|
74600
|
+
// 创建滚动处理函数
|
|
74601
|
+
createScrollHandler(container) {
|
|
74602
|
+
return () => {
|
|
74603
|
+
const {
|
|
74604
|
+
scrollTop,
|
|
74605
|
+
scrollHeight,
|
|
74606
|
+
clientHeight
|
|
74607
|
+
} = container;
|
|
74608
|
+
|
|
74609
|
+
// 当滚动到底部附近时,自动加载更多数据
|
|
74610
|
+
if (scrollTop + clientHeight >= scrollHeight - 50) {
|
|
74611
|
+
this.loadMoreOptions();
|
|
74612
|
+
}
|
|
74613
|
+
};
|
|
74614
|
+
},
|
|
74615
|
+
// 移除滚动监听
|
|
74616
|
+
removeScrollListener() {
|
|
74617
|
+
if (this.scrollContainer && this.handleScroll) {
|
|
74618
|
+
this.scrollContainer.removeEventListener('scroll', this.handleScroll);
|
|
74619
|
+
this.scrollContainer = null;
|
|
74620
|
+
}
|
|
74621
|
+
},
|
|
74622
|
+
// 加载更多选项
|
|
74623
|
+
loadMoreOptions() {
|
|
74624
|
+
if (this.loadingMore || this.currentPage * this.pageSize >= this.filteredOptions.length) return;
|
|
74625
|
+
this.loadingMore = true;
|
|
74626
|
+
|
|
74627
|
+
// 使用setTimeout模拟异步加载,避免界面卡顿
|
|
74628
|
+
setTimeout(() => {
|
|
74629
|
+
this.currentPage++;
|
|
74630
|
+
this.updateVisibleOptions();
|
|
74631
|
+
this.loadingMore = false;
|
|
74632
|
+
|
|
74633
|
+
// 如果下拉列表已经打开,更新滚动监听
|
|
74634
|
+
if (this.dropdownVisible) {
|
|
74635
|
+
this.$nextTick(() => {
|
|
74636
|
+
this.setupScrollListener();
|
|
74637
|
+
});
|
|
74638
|
+
}
|
|
74639
|
+
}, 200);
|
|
74640
|
+
},
|
|
74641
|
+
// 更新可见选项
|
|
74642
|
+
updateVisibleOptions() {
|
|
74643
|
+
// 直接从过滤后的选项中获取当前页的选项,保持原始顺序
|
|
74644
|
+
this.visibleOptions = this.filteredOptions.slice(0, this.currentPage * this.pageSize);
|
|
74506
74645
|
},
|
|
74507
74646
|
// 获取选项数据
|
|
74508
74647
|
async fetchOptions(params) {
|
|
@@ -74512,6 +74651,11 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74512
74651
|
const result = await this.loadOptions(params);
|
|
74513
74652
|
if (Array.isArray(result)) {
|
|
74514
74653
|
this.optionsList = result;
|
|
74654
|
+
this.filteredOptions = result;
|
|
74655
|
+
|
|
74656
|
+
// 初始加载多页数据
|
|
74657
|
+
this.currentPage = this.initialPageCount;
|
|
74658
|
+
this.updateVisibleOptions();
|
|
74515
74659
|
} else {
|
|
74516
74660
|
console.warn('【BatchQuerySelector组件】: loadOptions 应该返回一个数组');
|
|
74517
74661
|
}
|
|
@@ -74527,6 +74671,36 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74527
74671
|
refreshOptions(params) {
|
|
74528
74672
|
return this.fetchOptions(params);
|
|
74529
74673
|
},
|
|
74674
|
+
// 过滤选项方法
|
|
74675
|
+
filterOptions(query) {
|
|
74676
|
+
this.keyword = query;
|
|
74677
|
+
return true; // 返回true让所有选项通过,实际过滤在filterOptionsByKeyword中处理
|
|
74678
|
+
},
|
|
74679
|
+
// 根据关键词过滤选项
|
|
74680
|
+
filterOptionsByKeyword(query) {
|
|
74681
|
+
// 使用防抖处理,避免频繁计算
|
|
74682
|
+
clearTimeout(this.debounceTimer);
|
|
74683
|
+
this.debounceTimer = setTimeout(() => {
|
|
74684
|
+
if (query) {
|
|
74685
|
+
// 如果有搜索关键词,按关键词过滤
|
|
74686
|
+
this.filteredOptions = this.optionsList.filter(item => {
|
|
74687
|
+
const label = String(item[this.labelKey]).toLowerCase();
|
|
74688
|
+
const value = String(item[this.valueKey]).toLowerCase();
|
|
74689
|
+
const lowercaseQuery = query.toLowerCase();
|
|
74690
|
+
return label.includes(lowercaseQuery) || value.includes(lowercaseQuery);
|
|
74691
|
+
});
|
|
74692
|
+
} else {
|
|
74693
|
+
// 如果没有搜索关键词,显示所有选项
|
|
74694
|
+
this.filteredOptions = [...this.optionsList];
|
|
74695
|
+
}
|
|
74696
|
+
|
|
74697
|
+
// 重置当前页,但加载多页
|
|
74698
|
+
this.currentPage = this.initialPageCount;
|
|
74699
|
+
|
|
74700
|
+
// 更新可见选项
|
|
74701
|
+
this.updateVisibleOptions();
|
|
74702
|
+
}, 200);
|
|
74703
|
+
},
|
|
74530
74704
|
// 处理批量输入
|
|
74531
74705
|
handleBatchInput() {
|
|
74532
74706
|
if (!this.batchInputContent.trim()) {
|
|
@@ -74543,20 +74717,36 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74543
74717
|
|
|
74544
74718
|
// 根据输入类型匹配数据
|
|
74545
74719
|
let matchedValues = [];
|
|
74720
|
+
let matchedItems = [];
|
|
74546
74721
|
if (this.customMapFunction) {
|
|
74547
74722
|
// 使用自定义映射函数
|
|
74548
|
-
matchedValues = this.customMapFunction(inputValues, this.inputType, this.
|
|
74723
|
+
matchedValues = this.customMapFunction(inputValues, this.inputType, this.optionsList);
|
|
74724
|
+
// 获取匹配的完整选项对象
|
|
74725
|
+
matchedItems = this.optionsList.filter(item => matchedValues.includes(item[this.valueKey]));
|
|
74549
74726
|
} else {
|
|
74550
74727
|
// 默认映射逻辑
|
|
74551
74728
|
const searchKey = this.inputType === 'id' ? this.valueKey : this.labelKey;
|
|
74552
|
-
|
|
74553
|
-
|
|
74729
|
+
|
|
74730
|
+
// 先获取匹配的完整选项对象
|
|
74731
|
+
matchedItems = this.optionsList.filter(item => {
|
|
74554
74732
|
// 排除禁用的选项
|
|
74555
74733
|
if (this.isOptionDisabled(item)) {
|
|
74556
74734
|
return false;
|
|
74557
74735
|
}
|
|
74558
|
-
return inputValues.
|
|
74559
|
-
})
|
|
74736
|
+
return inputValues.some(input => String(item[searchKey]).toLowerCase() === String(input).toLowerCase());
|
|
74737
|
+
});
|
|
74738
|
+
|
|
74739
|
+
// 然后提取值
|
|
74740
|
+
matchedValues = matchedItems.map(item => item[this.valueKey]);
|
|
74741
|
+
}
|
|
74742
|
+
|
|
74743
|
+
// 如果没有匹配项,尝试进行模糊匹配
|
|
74744
|
+
if (matchedValues.length === 0 && this.inputType === 'name') {
|
|
74745
|
+
matchedItems = this.optionsList.filter(item => {
|
|
74746
|
+
if (this.isOptionDisabled(item)) return false;
|
|
74747
|
+
return inputValues.some(input => String(item[this.labelKey]).toLowerCase().includes(String(input).toLowerCase()));
|
|
74748
|
+
});
|
|
74749
|
+
matchedValues = matchedItems.map(item => item[this.valueKey]);
|
|
74560
74750
|
}
|
|
74561
74751
|
|
|
74562
74752
|
// 更新选中值
|
|
@@ -74583,9 +74773,14 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74583
74773
|
this.$emit('batch-input-complete', {
|
|
74584
74774
|
inputValues,
|
|
74585
74775
|
matchedValues,
|
|
74776
|
+
matchedItems,
|
|
74586
74777
|
type: this.inputType
|
|
74587
74778
|
});
|
|
74588
74779
|
}
|
|
74780
|
+
},
|
|
74781
|
+
beforeDestroy() {
|
|
74782
|
+
// 移除滚动监听器
|
|
74783
|
+
this.removeScrollListener();
|
|
74589
74784
|
}
|
|
74590
74785
|
});
|
|
74591
74786
|
;// ./src/components/batch-query-selector/BatchQuerySelector.vue?vue&type=script&lang=js
|
|
@@ -74600,8 +74795,8 @@ var BatchQuerySelectorvue_type_template_id_18d5c3ce_staticRenderFns = [];
|
|
|
74600
74795
|
;
|
|
74601
74796
|
var BatchQuerySelector_component = normalizeComponent(
|
|
74602
74797
|
batch_query_selector_BatchQuerySelectorvue_type_script_lang_js,
|
|
74603
|
-
|
|
74604
|
-
|
|
74798
|
+
BatchQuerySelectorvue_type_template_id_14840bc6_render,
|
|
74799
|
+
BatchQuerySelectorvue_type_template_id_14840bc6_staticRenderFns,
|
|
74605
74800
|
false,
|
|
74606
74801
|
null,
|
|
74607
74802
|
null,
|
|
@@ -74893,6 +75088,7 @@ var BatchQuerySelector_component = normalizeComponent(
|
|
|
74893
75088
|
});
|
|
74894
75089
|
},
|
|
74895
75090
|
handleBatchSelectorFocus(event, item) {
|
|
75091
|
+
console.log('focus-22222222');
|
|
74896
75092
|
this.$emit('batch-selector-focus', {
|
|
74897
75093
|
...event,
|
|
74898
75094
|
item
|
|
@@ -74902,10 +75098,10 @@ var BatchQuerySelector_component = normalizeComponent(
|
|
|
74902
75098
|
});
|
|
74903
75099
|
;// ./src/components/form/form.vue?vue&type=script&lang=js
|
|
74904
75100
|
/* harmony default export */ var form_formvue_type_script_lang_js = (formvue_type_script_lang_js);
|
|
74905
|
-
;// ./node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[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=style&index=0&id=
|
|
75101
|
+
;// ./node_modules/@vue/cli-service/node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-22.use[0]!./node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!./node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[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=style&index=0&id=6681f49c&prod&lang=scss&scoped=true
|
|
74906
75102
|
// extracted by mini-css-extract-plugin
|
|
74907
75103
|
|
|
74908
|
-
;// ./src/components/form/form.vue?vue&type=style&index=0&id=
|
|
75104
|
+
;// ./src/components/form/form.vue?vue&type=style&index=0&id=6681f49c&prod&lang=scss&scoped=true
|
|
74909
75105
|
|
|
74910
75106
|
;// ./src/components/form/form.vue
|
|
74911
75107
|
|
|
@@ -74918,18 +75114,18 @@ var BatchQuerySelector_component = normalizeComponent(
|
|
|
74918
75114
|
|
|
74919
75115
|
var form_component = normalizeComponent(
|
|
74920
75116
|
form_formvue_type_script_lang_js,
|
|
74921
|
-
|
|
74922
|
-
|
|
75117
|
+
formvue_type_template_id_6681f49c_scoped_true_render,
|
|
75118
|
+
formvue_type_template_id_6681f49c_scoped_true_staticRenderFns,
|
|
74923
75119
|
false,
|
|
74924
75120
|
null,
|
|
74925
|
-
"
|
|
75121
|
+
"6681f49c",
|
|
74926
75122
|
null
|
|
74927
75123
|
|
|
74928
75124
|
)
|
|
74929
75125
|
|
|
74930
75126
|
/* harmony default export */ var form_form = (form_component.exports);
|
|
74931
|
-
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7d802f52-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=
|
|
74932
|
-
var
|
|
75127
|
+
;// ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"7d802f52-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=69194707
|
|
75128
|
+
var page_searchvue_type_template_id_69194707_render = function render() {
|
|
74933
75129
|
var _vm = this,
|
|
74934
75130
|
_c = _vm._self._c;
|
|
74935
75131
|
return _c('div', {
|
|
@@ -74945,7 +75141,9 @@ var page_searchvue_type_template_id_d39cfe72_render = function render() {
|
|
|
74945
75141
|
"change": _vm.handleChange,
|
|
74946
75142
|
"queryBtnClick": _vm.handleQueryClick,
|
|
74947
75143
|
"submit": _vm.submit,
|
|
74948
|
-
"reset": _vm.reset
|
|
75144
|
+
"reset": _vm.reset,
|
|
75145
|
+
"batch-input-complete": _vm.handleBatchInputComplete,
|
|
75146
|
+
"batch-selector-focus": _vm.handleBatchSelectorFocus
|
|
74949
75147
|
},
|
|
74950
75148
|
scopedSlots: _vm._u([{
|
|
74951
75149
|
key: "header",
|
|
@@ -74976,7 +75174,7 @@ var page_searchvue_type_template_id_d39cfe72_render = function render() {
|
|
|
74976
75174
|
})], null, true)
|
|
74977
75175
|
}, 'by-form', _vm.searchFormConfig, false))], 1);
|
|
74978
75176
|
};
|
|
74979
|
-
var
|
|
75177
|
+
var page_searchvue_type_template_id_69194707_staticRenderFns = [];
|
|
74980
75178
|
|
|
74981
75179
|
;// ./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/page-search/page-search.vue?vue&type=script&lang=js
|
|
74982
75180
|
|
|
@@ -75075,6 +75273,12 @@ var page_searchvue_type_template_id_d39cfe72_staticRenderFns = [];
|
|
|
75075
75273
|
},
|
|
75076
75274
|
reset() {
|
|
75077
75275
|
this.$emit('reset');
|
|
75276
|
+
},
|
|
75277
|
+
handleBatchSelectorFocus(event) {
|
|
75278
|
+
this.$emit('batch-selector-focus', event);
|
|
75279
|
+
},
|
|
75280
|
+
handleBatchInputComplete(event) {
|
|
75281
|
+
this.$emit('batch-input-complete', event);
|
|
75078
75282
|
}
|
|
75079
75283
|
}
|
|
75080
75284
|
});
|
|
@@ -75090,8 +75294,8 @@ var page_searchvue_type_template_id_d39cfe72_staticRenderFns = [];
|
|
|
75090
75294
|
;
|
|
75091
75295
|
var page_search_component = normalizeComponent(
|
|
75092
75296
|
page_search_page_searchvue_type_script_lang_js,
|
|
75093
|
-
|
|
75094
|
-
|
|
75297
|
+
page_searchvue_type_template_id_69194707_render,
|
|
75298
|
+
page_searchvue_type_template_id_69194707_staticRenderFns,
|
|
75095
75299
|
false,
|
|
75096
75300
|
null,
|
|
75097
75301
|
null,
|
package/lib/by-components.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.b-form .header[data-v-
|
|
1
|
+
.b-form .header[data-v-6681f49c]{margin-bottom:20px}.b-form .footer[data-v-6681f49c]{margin-top:20px}
|