eoss-ui 0.5.81-beta1 → 0.5.81-beta10

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.
Files changed (78) hide show
  1. package/lib/data-table.js +145 -124
  2. package/lib/eoss-ui.common.js +2085 -1113
  3. package/lib/form.js +40 -2
  4. package/lib/handle-user.js +16 -3
  5. package/lib/handler.js +9 -3
  6. package/lib/icon.js +14 -7
  7. package/lib/index.js +1 -1
  8. package/lib/login.js +8 -6
  9. package/lib/main.js +1752 -919
  10. package/lib/select.js +1 -1
  11. package/lib/selector-panel.js +65 -17
  12. package/lib/selector.js +8 -4
  13. package/lib/theme-chalk/base.css +1 -1
  14. package/lib/theme-chalk/button-group.css +1 -1
  15. package/lib/theme-chalk/data-table.css +1 -1
  16. package/lib/theme-chalk/form.css +1 -1
  17. package/lib/theme-chalk/handler.css +1 -1
  18. package/lib/theme-chalk/index.css +1 -1
  19. package/lib/theme-chalk/main.css +1 -1
  20. package/lib/theme-chalk/menu.css +1 -1
  21. package/lib/theme-chalk/nav.css +1 -1
  22. package/lib/theme-chalk/selector-panel.css +1 -1
  23. package/lib/theme-chalk/simplicity.css +1 -1
  24. package/lib/theme-chalk/sizer.css +1 -1
  25. package/lib/theme-chalk/tree.css +1 -1
  26. package/lib/theme-chalk/upload.css +1 -1
  27. package/lib/upload.js +6 -6
  28. package/package.json +2 -2
  29. package/packages/data-table/src/main.vue +53 -28
  30. package/packages/form/src/main.vue +38 -8
  31. package/packages/handle-user/src/main.vue +10 -3
  32. package/packages/handler/src/main.vue +2 -0
  33. package/packages/icon/src/main.vue +12 -5
  34. package/packages/login/src/main.vue +10 -4
  35. package/packages/main/src/default/index.vue +4 -3
  36. package/packages/main/src/main.vue +16 -12
  37. package/packages/main/src/simplicity/apps.vue +176 -145
  38. package/packages/main/src/simplicity/avatar.vue +16 -6
  39. package/packages/main/src/simplicity/index.vue +372 -179
  40. package/packages/main/src/simplicity/menu-list.vue +74 -24
  41. package/packages/main/src/simplicity/message.vue +35 -25
  42. package/packages/main/src/simplicity/notice.vue +72 -39
  43. package/packages/main/src/simplicity/router-page.vue +53 -0
  44. package/packages/main/src/simplicity/settings.vue +1 -1
  45. package/packages/main/src/simplicity/sub-menu.vue +159 -57
  46. package/packages/main/src/simplicity/user.vue +10 -5
  47. package/packages/main/src/simplicity/userinfo.vue +1 -0
  48. package/packages/select/src/main.vue +4 -1
  49. package/packages/selector/src/main.vue +6 -2
  50. package/packages/selector-panel/src/main.vue +22 -8
  51. package/packages/selector-panel/src/selection.vue +6 -0
  52. package/packages/theme-chalk/lib/base.css +1 -1
  53. package/packages/theme-chalk/lib/button-group.css +1 -1
  54. package/packages/theme-chalk/lib/data-table.css +1 -1
  55. package/packages/theme-chalk/lib/form.css +1 -1
  56. package/packages/theme-chalk/lib/handler.css +1 -1
  57. package/packages/theme-chalk/lib/index.css +1 -1
  58. package/packages/theme-chalk/lib/main.css +1 -1
  59. package/packages/theme-chalk/lib/menu.css +1 -1
  60. package/packages/theme-chalk/lib/nav.css +1 -1
  61. package/packages/theme-chalk/lib/selector-panel.css +1 -1
  62. package/packages/theme-chalk/lib/simplicity.css +1 -1
  63. package/packages/theme-chalk/lib/sizer.css +1 -1
  64. package/packages/theme-chalk/lib/tree.css +1 -1
  65. package/packages/theme-chalk/lib/upload.css +1 -1
  66. package/packages/theme-chalk/src/base.scss +5 -0
  67. package/packages/theme-chalk/src/button-group.scss +3 -3
  68. package/packages/theme-chalk/src/common/var.scss +6 -0
  69. package/packages/theme-chalk/src/data-table.scss +9 -9
  70. package/packages/theme-chalk/src/form.scss +2 -4
  71. package/packages/theme-chalk/src/handler.scss +5 -1
  72. package/packages/theme-chalk/src/login.scss +2 -2
  73. package/packages/theme-chalk/src/nav.scss +3 -2
  74. package/packages/theme-chalk/src/selector-panel.scss +2 -1
  75. package/packages/theme-chalk/src/simplicity.scss +340 -58
  76. package/packages/theme-chalk/src/tree.scss +4 -2
  77. package/packages/upload/src/main.vue +3 -1
  78. package/src/index.js +1 -1
@@ -20,7 +20,10 @@
20
20
  <div class="es-user-job es-pointer" :title="job.name">
21
21
  {{ job.name }}<i class="es-icon-tri-down"></i>
22
22
  </div>
23
- <el-dropdown-menu slot="dropdown">
23
+ <el-dropdown-menu
24
+ slot="dropdown"
25
+ :max-height="jobScrollbar ? undefined : 0"
26
+ >
24
27
  <el-dropdown-item
25
28
  v-for="(ele, ins) in user.identityList"
26
29
  :key="ins"
@@ -29,8 +32,8 @@
29
32
  >{{ ele.name }}</el-dropdown-item
30
33
  >
31
34
  </el-dropdown-menu>
32
- </el-dropdown></template
33
- >
35
+ </el-dropdown>
36
+ </template>
34
37
  </div>
35
38
  </div>
36
39
  </template>
@@ -42,6 +45,10 @@ import util from 'eoss-ui/src/utils/util';
42
45
  export default {
43
46
  name: 'EsHandleUser',
44
47
  props: {
48
+ jobScrollbar: {
49
+ type: Boolean,
50
+ default: true
51
+ },
45
52
  data: Object,
46
53
  userModel: Object
47
54
  },
@@ -11,6 +11,7 @@
11
11
  class="es-handler-user"
12
12
  :data="item"
13
13
  :userModel="userModel"
14
+ :job-scrollbar="jobScrollbar"
14
15
  @click="handleClick"
15
16
  @change="handleChange"
16
17
  ></es-handle-user>
@@ -116,6 +117,7 @@ export default {
116
117
  }
117
118
  },
118
119
  props: {
120
+ jobScrollbar: Boolean,
119
121
  data: Array,
120
122
  color: {
121
123
  type: String,
@@ -48,12 +48,12 @@ export default {
48
48
  if (this.unicode(val)) {
49
49
  this.code = '';
50
50
  this.className = val;
51
- } else if (util.startWith(val, '&#')) {
52
- this.code = val;
53
- this.className = 'es-icon';
54
- } else {
51
+ } else if (this.isId(val)) {
55
52
  this.tag = 'img';
56
53
  this.url = this.preview + val;
54
+ } else {
55
+ this.code = val;
56
+ this.className = 'es-icon';
57
57
  }
58
58
  }
59
59
  } else {
@@ -80,7 +80,14 @@ export default {
80
80
  if (!res) {
81
81
  return false;
82
82
  }
83
- var reg = new RegExp(/^[es-|el-]\S+/, 'g');
83
+ var reg = new RegExp(/^(es-|el-)\S+/, 'g');
84
+ return res.match(reg) ? res.match(reg).length : 0;
85
+ },
86
+ isId(res) {
87
+ if (!res) {
88
+ return false;
89
+ }
90
+ var reg = new RegExp(/[a-z0-9]+-[a-z0-9]+-[a-z0-9]+-[a-z0-9]+\S+/, 'g');
84
91
  return res.match(reg) ? res.match(reg).length : 0;
85
92
  }
86
93
  }
@@ -579,6 +579,7 @@ export default {
579
579
  type: String,
580
580
  default: 'center'
581
581
  },
582
+ translate: String,
582
583
  useResults: {
583
584
  type: Boolean,
584
585
  default: true
@@ -591,31 +592,36 @@ export default {
591
592
  },
592
593
  computed: {
593
594
  transform() {
595
+ let translate = this.translate
596
+ ? this.translate
597
+ : this.align === 'center'
598
+ ? '-50%, -51%'
599
+ : '-51%';
594
600
  if (this.align.indexOf('%') > -1) {
595
601
  return {
596
602
  left: this.align,
597
603
  top: '50%',
598
- transform: 'translateY(-51%)'
604
+ transform: `translateY(${translate})`
599
605
  };
600
606
  }
601
607
  if (this.align === 'left') {
602
608
  return {
603
609
  left: '30%',
604
610
  top: '50%',
605
- transform: 'translateY(-51%)'
611
+ transform: `translateY(${translate})`
606
612
  };
607
613
  }
608
614
  if (this.align === 'right') {
609
615
  return {
610
616
  left: '70%',
611
617
  top: '50%',
612
- transform: 'translateY(-51%)'
618
+ transform: `translateY(${translate})`
613
619
  };
614
620
  }
615
621
  return {
616
622
  left: '50%',
617
623
  top: '50%',
618
- transform: 'translate(-50%, -51%)'
624
+ transform: `translate(${translate})`
619
625
  };
620
626
  },
621
627
  redirectUri() {
@@ -31,6 +31,7 @@
31
31
  ></es-menu>
32
32
  </div>
33
33
  <es-handler
34
+ :job-scrollbar="jobScrollbar"
34
35
  :userModel="userModel"
35
36
  :hide="hide"
36
37
  :subSystem="subsystem"
@@ -213,8 +214,7 @@ import {
213
214
  mainConfig,
214
215
  updateUserCustomInfo,
215
216
  getComplexApplications,
216
- getComplexApplicationsNew,
217
- mainDetail
217
+ getComplexApplicationsNew
218
218
  } from 'eoss-ui/src/config/api.js';
219
219
  import store from 'eoss-ui/src/utils/store';
220
220
  import util from 'eoss-ui/src/utils/util';
@@ -222,7 +222,7 @@ const isIE = navigator.userAgent.indexOf('MSIE') != -1;
222
222
  const log = util.getParams('console');
223
223
  const appCode = util.getParams('appCode') || util.getParams('appcode');
224
224
  export default {
225
- name: 'EsMainDefault',
225
+ name: 'MainDefault',
226
226
  inheritAttrs: false,
227
227
  provide() {
228
228
  return {
@@ -236,6 +236,7 @@ export default {
236
236
  notice
237
237
  },
238
238
  props: {
239
+ jobScrollbar: Boolean,
239
240
  maxHeight: String,
240
241
  //菜单导航地址
241
242
  menuUrl: String,
@@ -1,22 +1,23 @@
1
1
  <template>
2
2
  <div class="es-main-box">
3
- <es-main-simplicity
3
+ <simplicity
4
4
  ref="main"
5
5
  v-if="type == 'simplicity'"
6
+ :appCode="appCode"
6
7
  v-bind="$attrs"
7
8
  v-on="$listeners"
8
- ></es-main-simplicity>
9
- <es-main-default
9
+ ></simplicity>
10
+ <main-default
10
11
  v-else
11
12
  v-bind="$attrs"
12
13
  ref="main"
13
14
  v-on="$listeners"
14
- ></es-main-default>
15
+ ></main-default>
15
16
  </div>
16
17
  </template>
17
18
  <script>
18
- import EsMainSimplicity from './simplicity/index.vue';
19
- import EsMainDefault from './default/index.vue';
19
+ import Simplicity from './simplicity/index.vue';
20
+ import MainDefault from './default/index.vue';
20
21
  import util from 'eoss-ui/src/utils/util';
21
22
  export default {
22
23
  name: 'EsMain',
@@ -27,8 +28,8 @@ export default {
27
28
  };
28
29
  },
29
30
  components: {
30
- EsMainSimplicity,
31
- EsMainDefault
31
+ Simplicity,
32
+ MainDefault
32
33
  },
33
34
  props: {
34
35
  type: String
@@ -36,11 +37,15 @@ export default {
36
37
  computed: {},
37
38
  watch: {},
38
39
  data() {
39
- return {};
40
+ return {
41
+ appCode: '',
42
+ params: {}
43
+ };
40
44
  },
41
45
  created() {
42
- let params = util.getParams() || {};
43
- this.getConfig(params);
46
+ this.params = util.getParams() || {};
47
+ this.appCode = this.params.appCode;
48
+ this.getConfig(this.params);
44
49
  },
45
50
  mounted() {},
46
51
  methods: {
@@ -50,7 +55,6 @@ export default {
50
55
  * @date 2024年9月7日
51
56
  **/
52
57
  getConfig(query) {
53
- console.log(121212);
54
58
  const token =
55
59
  util.getStorage('token') || util.getStorage('Authorization');
56
60
  if (
@@ -1,176 +1,187 @@
1
1
  <template>
2
- <div class="es-simplicity_apps">
3
- <div class="es-simplicity_apps-all">
4
- <div class="es-simplicity_apps-title">
5
- 所有业务系统
6
- <el-input
7
- class="es-simplicity_apps-search"
8
- size="medium"
9
- placeholder="请输入关键字"
10
- prefix-icon="el-icon-search"
11
- v-model="value"
12
- >
13
- </el-input>
14
- </div>
15
- <div class="es-simplicity_apps-box">
16
- <ul class="es-simplicity_apps-list">
17
- <li
18
- v-for="item in _applications"
19
- class="es-simplicity_apps-list-item"
20
- :key="item.id"
21
- >
22
- <div
23
- class="es-simplicity_apps-list-content"
24
- :class="{ 'es-simplicity_apps-disabled': !item.permission }"
25
- @click="handleClick(item)"
26
- >
27
- <el-badge v-bind="getBadge(item)">
28
- <es-icon
29
- class="es-simplicity_apps-icon"
30
- :contents="item.icons || item.icon || menuIcon"
31
- ></es-icon>
32
- </el-badge>
33
- <div class="es-simplicity_apps-text">
34
- {{ item.text || item.name }}
35
- </div>
36
- <div class="es-simplicity_apps-hover">
37
- <es-icon
38
- class="es-simplicity_apps-icon"
39
- :contents="
40
- item.permission ? 'es-icon-jiantou-next' : 'es-icon-mm'
41
- "
42
- ></es-icon>
43
- <div class="es-simplicity_apps-text">
44
- {{ item.permission ? '进入系统' : '暂无权限' }}
45
- </div>
46
- </div>
47
- </div>
48
- </li>
49
- </ul>
50
- </div>
51
- <el-pagination
52
- class="es-simplicity_apps-pagination"
53
- background
54
- layout="total,prev, pager, next"
55
- total-text="共 {total} 个业务系统"
56
- :page-size="appSize"
57
- :total="apps.length"
58
- @current-change="
59
- (res) => {
60
- this.handleChange(res, 0);
61
- }
62
- "
63
- >
64
- </el-pagination>
65
- </div>
66
- <div class="es-simplicity_apps-other">
67
- <div class="es-simplicity_apps-business">
68
- <div class="es-simplicity_apps-title">专项业务系统</div>
69
- <ul class="es-simplicity_apps-list">
70
- <li
71
- v-for="(item, index) in _business"
72
- class="es-simplicity_apps-list-item"
73
- :key="item.id"
2
+ <el-drawer
3
+ class="es-simplicity-apps"
4
+ direction="ltr"
5
+ modal-class="es-simplicity-apps-modal"
6
+ size="90%"
7
+ :modal-append-to-body="false"
8
+ :with-header="false"
9
+ :visible.sync="show"
10
+ >
11
+ <div class="es-simplicity_apps">
12
+ <div class="es-simplicity_apps-all">
13
+ <div class="es-simplicity_apps-title">
14
+ 所有业务系统
15
+ <el-input
16
+ class="es-simplicity_apps-search"
17
+ size="medium"
18
+ placeholder="请输入关键字"
19
+ prefix-icon="el-icon-search"
20
+ v-model="value"
74
21
  >
75
- <div
76
- class="es-simplicity_apps-list-content"
77
- :class="{ 'es-simplicity_apps-disabled': !item.permission }"
78
- @click="handleClick(item)"
22
+ </el-input>
23
+ </div>
24
+ <div class="es-simplicity_apps-box" @mousewheel="handleWheel">
25
+ <ul class="es-simplicity_apps-list">
26
+ <li
27
+ v-for="item in _applications"
28
+ class="es-simplicity_apps-list-item"
29
+ :key="item.id"
79
30
  >
80
- <es-icon
81
- class="es-simplicity_app-icon"
82
- :style="setStyle(index)"
83
- :contents="item.icons || item.icon || menuIcon"
84
- ></es-icon>
85
- <el-badge v-bind="getBadge(item)">
31
+ <div
32
+ class="es-simplicity_apps-list-content"
33
+ :class="{ 'es-simplicity_apps-disabled': !item.permission }"
34
+ @click="handleClick(item)"
35
+ >
36
+ <el-badge v-bind="getBadge(item)">
37
+ <es-icon
38
+ class="es-simplicity_apps-icon"
39
+ :contents="item.icons || item.icon || menuIcon"
40
+ ></es-icon>
41
+ </el-badge>
86
42
  <div class="es-simplicity_apps-text">
87
43
  {{ item.text || item.name }}
88
44
  </div>
89
- </el-badge>
90
- <div class="es-simplicity_apps-hover">
91
- <es-icon
92
- class="es-simplicity_apps-icon"
93
- :contents="
94
- item.permission ? 'es-icon-jiantou-next' : 'es-icon-mm'
95
- "
96
- ></es-icon>
97
- <div class="es-simplicity_apps-text">
98
- {{ item.permission ? '进入系统' : '暂无权限' }}
45
+ <div class="es-simplicity_apps-hover">
46
+ <es-icon
47
+ class="es-simplicity_apps-icon"
48
+ :contents="
49
+ item.permission ? 'es-icon-jiantou-next' : 'es-icon-mm'
50
+ "
51
+ ></es-icon>
52
+ <div class="es-simplicity_apps-text">
53
+ {{ item.permission ? '进入系统' : '暂无权限' }}
54
+ </div>
99
55
  </div>
100
56
  </div>
101
- </div>
102
- </li>
103
- </ul>
57
+ </li>
58
+ </ul>
59
+ </div>
104
60
  <el-pagination
105
61
  class="es-simplicity_apps-pagination"
106
62
  background
107
63
  layout="total,prev, pager, next"
108
- total-text="共 {total} 专项业务系统"
64
+ total-text="共 {total} 个业务系统"
109
65
  :page-size="appSize"
110
- :total="business.length"
66
+ :total="apps.length"
67
+ :current-page.sync="appNum"
111
68
  @current-change="
112
69
  (res) => {
113
- this.handleChange(res, 1);
70
+ this.handleChange(res, 0);
114
71
  }
115
72
  "
116
73
  >
117
74
  </el-pagination>
118
75
  </div>
119
- <div class="es-simplicity_apps-systems">
120
- <div class="es-simplicity_apps-title">系统设置</div>
121
- <ul class="es-simplicity_apps-list">
122
- <li
123
- v-for="(item, index) in _systems"
124
- class="es-simplicity_apps-list-item"
125
- :key="item.id"
126
- >
127
- <div
128
- class="es-simplicity_apps-list-content"
129
- :class="{ 'es-simplicity_apps-disabled': !item.permission }"
130
- @click="handleClick(item)"
76
+ <div class="es-simplicity_apps-other">
77
+ <div class="es-simplicity_apps-business">
78
+ <div class="es-simplicity_apps-title">专项业务系统</div>
79
+ <ul class="es-simplicity_apps-list">
80
+ <li
81
+ v-for="(item, index) in _business"
82
+ class="es-simplicity_apps-list-item"
83
+ :key="item.id"
131
84
  >
132
- <es-icon
133
- class="es-simplicity_app-icon"
134
- :style="setStyle(index)"
135
- :contents="item.icons || item.icon || menuIcon"
136
- ></es-icon>
137
- <el-badge v-bind="getBadge(item)">
138
- <div class="es-simplicity_apps-text">
139
- {{ item.text || item.name }}
85
+ <div
86
+ class="es-simplicity_apps-list-content"
87
+ :class="{ 'es-simplicity_apps-disabled': !item.permission }"
88
+ @click="handleClick(item)"
89
+ >
90
+ <es-icon
91
+ class="es-simplicity_app-icon"
92
+ :style="setStyle(index)"
93
+ :contents="item.icons || item.icon || menuIcon"
94
+ ></es-icon>
95
+ <el-badge v-bind="getBadge(item)">
96
+ <div class="es-simplicity_apps-text">
97
+ {{ item.text || item.name }}
98
+ </div>
99
+ </el-badge>
100
+ <div class="es-simplicity_apps-hover">
101
+ <es-icon
102
+ class="es-simplicity_apps-icon"
103
+ :contents="
104
+ item.permission ? 'es-icon-jiantou-next' : 'es-icon-mm'
105
+ "
106
+ ></es-icon>
107
+ <div class="es-simplicity_apps-text">
108
+ {{ item.permission ? '进入系统' : '暂无权限' }}
109
+ </div>
140
110
  </div>
141
- </el-badge>
142
- <div class="es-simplicity_apps-hover">
111
+ </div>
112
+ </li>
113
+ </ul>
114
+ <el-pagination
115
+ class="es-simplicity_apps-pagination"
116
+ background
117
+ layout="total,prev, pager, next"
118
+ total-text="共 {total} 专项业务系统"
119
+ :page-size="appSize"
120
+ :total="business.length"
121
+ @current-change="
122
+ (res) => {
123
+ this.handleChange(res, 1);
124
+ }
125
+ "
126
+ >
127
+ </el-pagination>
128
+ </div>
129
+ <div class="es-simplicity_apps-systems">
130
+ <div class="es-simplicity_apps-title">系统设置</div>
131
+ <ul class="es-simplicity_apps-list">
132
+ <li
133
+ v-for="(item, index) in _systems"
134
+ class="es-simplicity_apps-list-item"
135
+ :key="item.id"
136
+ >
137
+ <div
138
+ class="es-simplicity_apps-list-content"
139
+ :class="{ 'es-simplicity_apps-disabled': !item.permission }"
140
+ @click="handleClick(item)"
141
+ >
143
142
  <es-icon
144
- class="es-simplicity_apps-icon"
145
- :contents="
146
- item.permission ? 'es-icon-jiantou-next' : 'es-icon-mm'
147
- "
143
+ class="es-simplicity_app-icon"
144
+ :style="setStyle(index)"
145
+ :contents="item.icons || item.icon || menuIcon"
148
146
  ></es-icon>
149
- <div class="es-simplicity_apps-text">
150
- {{ item.permission ? '进入系统' : '暂无权限' }}
147
+ <el-badge v-bind="getBadge(item)">
148
+ <div class="es-simplicity_apps-text">
149
+ {{ item.text || item.name }}
150
+ </div>
151
+ </el-badge>
152
+ <div class="es-simplicity_apps-hover">
153
+ <es-icon
154
+ class="es-simplicity_apps-icon"
155
+ :contents="
156
+ item.permission ? 'es-icon-jiantou-next' : 'es-icon-mm'
157
+ "
158
+ ></es-icon>
159
+ <div class="es-simplicity_apps-text">
160
+ {{ item.permission ? '进入系统' : '暂无权限' }}
161
+ </div>
151
162
  </div>
152
163
  </div>
153
- </div>
154
- </li>
155
- </ul>
156
- <el-pagination
157
- class="es-simplicity_apps-pagination"
158
- background
159
- layout="total,prev, pager, next"
160
- total-text="共 {total} 系统设置"
161
- hide-on-single-page
162
- :page-size="appSize"
163
- :total="business.length"
164
- @current-change="
165
- (res) => {
166
- this.handleChange(res, 2);
167
- }
168
- "
169
- >
170
- </el-pagination>
164
+ </li>
165
+ </ul>
166
+ <el-pagination
167
+ class="es-simplicity_apps-pagination"
168
+ background
169
+ layout="total,prev, pager, next"
170
+ total-text="共 {total} 系统设置"
171
+ hide-on-single-page
172
+ :page-size="appSize"
173
+ :total="business.length"
174
+ @current-change="
175
+ (res) => {
176
+ this.handleChange(res, 2);
177
+ }
178
+ "
179
+ >
180
+ </el-pagination>
181
+ </div>
171
182
  </div>
172
183
  </div>
173
- </div>
184
+ </el-drawer>
174
185
  </template>
175
186
 
176
187
  <script>
@@ -179,6 +190,7 @@ export default {
179
190
  name: 'Apps',
180
191
  components: {},
181
192
  props: {
193
+ visible: Boolean,
182
194
  //菜单、应用默认图标
183
195
  menuIcon: String,
184
196
  color: {
@@ -233,6 +245,15 @@ export default {
233
245
  };
234
246
  },
235
247
  computed: {
248
+ show: {
249
+ get() {
250
+ return this.visible;
251
+ },
252
+ set(val) {
253
+ this.$emit('update:visible', val);
254
+ return val;
255
+ }
256
+ },
236
257
  _applications() {
237
258
  return this.apps.filter((item, index) => {
238
259
  return (
@@ -310,6 +331,16 @@ export default {
310
331
  let name = ['appNum', 'bsNum', 'sysNum'];
311
332
  this[name[index]] = res;
312
333
  },
334
+ handleWheel(e) {
335
+ let direction = e.deltaY > 0 ? 'down' : 'up'; //deltaY为正则滚轮向下,为负滚轮向上
336
+ let total = Math.ceil(this.apps.length / this.appSize);
337
+ if (direction == 'up' && this.appNum > 1) {
338
+ this.appNum -= 1;
339
+ }
340
+ if (direction == 'down' && this.appNum < total) {
341
+ this.appNum += 1;
342
+ }
343
+ },
313
344
  handleClick(res) {
314
345
  this.$emit('click', res);
315
346
  },