doway-coms 2.11.92 → 2.11.94

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "doway-coms",
3
- "version": "2.11.92",
3
+ "version": "2.11.94",
4
4
  "description": "doway组件库",
5
5
  "author": "dowaysoft",
6
6
  "main": "packages/index.js",
@@ -24,6 +24,7 @@
24
24
  "vue-contextmenujs": "^1.4.9",
25
25
  "vue-router": "3.6.5",
26
26
  "vuedraggable": "^2.24.3",
27
+ "vue-virtual-scroller": "^1.1.2",
27
28
  "vuex": "3.6.2",
28
29
  "vxe-table": "3.8.24",
29
30
  "xe-clipboard": "1.10.2",
@@ -614,10 +614,6 @@
614
614
  </template>
615
615
  <template #select_remote_filter="scope">
616
616
  <div class="interceptor-filter-class">
617
- <a-checkbox-group
618
- v-model="scope.column.filters[0].data.displayValues"
619
- @keyup.enter.native="filterConfirm(scope.column)"
620
- >
621
617
  <a-input
622
618
  placeholder="请输入搜索内容"
623
619
  @change="displayValueSearchTextChange(scope.column)"
@@ -626,25 +622,27 @@
626
622
  '已选' + scope.column.filters[0].data.displayValues.length
627
623
  "
628
624
  />
629
- <div style="max-height: 200px; overflow-y: scroll">
630
- <div
631
- style="text-align: left"
632
- v-for="loopSource in scope.column.params.dataSource"
633
- :key="loopSource.value"
634
- >
635
- <a-checkbox
636
- v-show="
637
- loopSource.caption.indexOf(
638
- scope.column.filters[0].data.displayValueSearchText
639
- ) > -1
640
- "
625
+ <div style="max-height: 200px; overflow-y: scroll;text-align: left">
626
+ <RecycleScroller
627
+ class="scroller"
628
+ :items="scope.column.params.dataSource.filter(item =>
629
+ !scope.column.filters[0].data.displayValueSearchText ||
630
+ item.caption.indexOf(scope.column.filters[0].data.displayValueSearchText) > -1
631
+ )"
632
+ :item-size="40"
633
+ key-field="value"
634
+ style="height:200px"
635
+ v-slot="{ item: loopSource, index }"
636
+ >
637
+ {{ index+1}}:<a-checkbox
638
+ :checked="scope.column.filters[0].data.displayValues.includes(loopSource.value)"
641
639
  :value="loopSource.value"
640
+ @change="(e) => handleFilterCheckboxChange(scope.column, loopSource.value, e)"
642
641
  style="margin: 5px 0"
643
642
  >{{ loopSource.caption }}
644
643
  </a-checkbox>
645
- </div>
644
+ </RecycleScroller>
646
645
  </div>
647
- </a-checkbox-group>
648
646
  <br />
649
647
  <a-button
650
648
  @click="saveFilterTable(scope.column)"
@@ -868,9 +866,12 @@ import { saveUserModuleDataFieldApi, userResetApi, saveUserModuleDataPageSizeApi
868
866
  import { gridDefaultValueDisplay } from '../../utils/filters'
869
867
  import SeqSetting from './SeqSetting'
870
868
  import request from '../../utils/request'
869
+ import { RecycleScroller } from 'vue-virtual-scroller'
870
+ import 'vue-virtual-scroller/dist/vue-virtual-scroller.css'
871
871
  export default {
872
872
  name: 'BaseGrid',
873
873
  components: {
874
+ RecycleScroller,
874
875
  'a-tag': Tag,
875
876
  'a-popover': Popover,
876
877
  'a-empty': Empty,
@@ -4134,7 +4135,8 @@ export default {
4134
4135
  })
4135
4136
  if (
4136
4137
  column.params.controlType !== controlType.select &&
4137
- column.params.controlType !== controlType.multiSelect
4138
+ column.params.controlType !== controlType.multiSelect &&
4139
+ column.params.filterControlType !== 'select_remote'
4138
4140
  ) {
4139
4141
  column.filters[0].data.displayValues.push({
4140
4142
  value: [null, null],