n20-common-lib 1.2.6 → 1.2.9

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 (202) hide show
  1. package/README.md +2 -2
  2. package/package.json +87 -87
  3. package/src/_qiankun/index.js +113 -113
  4. package/src/_qiankun/postMessage.js +48 -48
  5. package/src/assets/css/_coreLib.scss +35 -35
  6. package/src/assets/css/cl-anchor.scss +23 -23
  7. package/src/assets/css/cl-approve-card.scss +58 -58
  8. package/src/assets/css/cl-dialog.scss +99 -99
  9. package/src/assets/css/cl-drag-list.scss +22 -22
  10. package/src/assets/css/cl-empty.scss +10 -10
  11. package/src/assets/css/cl-expandable-pane.scss +26 -26
  12. package/src/assets/css/cl-expandable.scss +24 -24
  13. package/src/assets/css/cl-file-upload-table.scss +11 -11
  14. package/src/assets/css/cl-filter.scss +4 -4
  15. package/src/assets/css/cl-flow-step.scss +185 -185
  16. package/src/assets/css/cl-footer-box.scss +10 -10
  17. package/src/assets/css/cl-form-item.scss +454 -454
  18. package/src/assets/css/cl-general-card.scss +11 -11
  19. package/src/assets/css/cl-layout-aside.scss +88 -88
  20. package/src/assets/css/cl-layout-content.scss +16 -16
  21. package/src/assets/css/cl-layout-header.scss +73 -73
  22. package/src/assets/css/cl-layout-tabs.scss +87 -87
  23. package/src/assets/css/cl-layout.scss +97 -97
  24. package/src/assets/css/cl-login-temporary.scss +37 -37
  25. package/src/assets/css/cl-message.scss +75 -75
  26. package/src/assets/css/cl-more-tab.scss +98 -98
  27. package/src/assets/css/cl-nav-menu.scss +5 -5
  28. package/src/assets/css/cl-pagination.scss +65 -65
  29. package/src/assets/css/cl-secondary-tab.scss +39 -39
  30. package/src/assets/css/cl-showcolumn.scss +23 -23
  31. package/src/assets/css/cl-sifting.scss +51 -51
  32. package/src/assets/css/cl-statis.scss +42 -42
  33. package/src/assets/css/cl-step.scss +73 -73
  34. package/src/assets/css/cl-suspend.scss +19 -19
  35. package/src/assets/css/cl-tertiary-tab.scss +9 -9
  36. package/src/assets/css/cl-upload.scss +41 -41
  37. package/src/assets/css/cl-worn-pagination.scss +50 -50
  38. package/src/assets/css/el-button.scss +173 -173
  39. package/src/assets/css/el-table.scss +79 -79
  40. package/src/assets/css/element-variables.scss +1061 -1061
  41. package/src/assets/css/element.dev.scss +21 -21
  42. package/src/assets/css/font-icon.scss +27 -26
  43. package/src/assets/css/index.dev.scss +4 -4
  44. package/src/assets/css/index.scss +11 -11
  45. package/src/assets/css/normalize.scss +726 -726
  46. package/src/assets/css/rootvar.scss +139 -139
  47. package/src/assets/css/select.scss +25 -25
  48. package/src/assets/css/title-pop.scss +4 -4
  49. package/src/assets/getJsonc.js +50 -50
  50. package/src/assets/iconFont/demo.css +539 -0
  51. package/src/assets/iconFont/demo_index.html +1614 -0
  52. package/src/assets/iconFont/iconfont.css +263 -0
  53. package/src/assets/iconFont/iconfont.js +1 -0
  54. package/src/assets/iconFont/iconfont.json +443 -0
  55. package/src/assets/iconFont/iconfont.ttf +0 -0
  56. package/src/assets/iconFont/iconfont.woff +0 -0
  57. package/src/assets/iconFont/iconfont.woff2 +0 -0
  58. package/src/assets/realUrl.js +12 -12
  59. package/src/components/.DS_Store +0 -0
  60. package/src/components/Anchor/AnchorItem.vue +29 -29
  61. package/src/components/Anchor/index.vue +185 -185
  62. package/src/components/ApprovalButtons/index.vue +232 -232
  63. package/src/components/ApprovalCard/index.vue +128 -128
  64. package/src/components/ApprovalRecord/approvalImg.vue +39 -39
  65. package/src/components/ApprovalRecord/index.vue +59 -59
  66. package/src/components/Button/button-group.vue +150 -150
  67. package/src/components/Button/icon-group-button.vue +61 -61
  68. package/src/components/Button/index.vue +56 -56
  69. package/src/components/CascaderArea/index.vue +81 -81
  70. package/src/components/ContentLoading/index.vue +41 -41
  71. package/src/components/ContentNull/index.vue +19 -19
  72. package/src/components/DatePicker/index.vue +27 -27
  73. package/src/components/DatePicker/por.vue +169 -169
  74. package/src/components/Dialog/index.vue +26 -26
  75. package/src/components/Dialog/indexO.vue +116 -116
  76. package/src/components/DragList/index.vue +68 -68
  77. package/src/components/Empty/img/abnormal.svg +108 -108
  78. package/src/components/Empty/img/dispose.svg +71 -71
  79. package/src/components/Empty/img/empty.svg +57 -57
  80. package/src/components/Empty/img/general.svg +58 -58
  81. package/src/components/Empty/img/lock.svg +57 -57
  82. package/src/components/Empty/img/network.svg +59 -59
  83. package/src/components/Empty/img/relevant.svg +68 -68
  84. package/src/components/Empty/img/search.svg +72 -72
  85. package/src/components/Empty/index.vue +92 -92
  86. package/src/components/Expandable/index.vue +49 -49
  87. package/src/components/Expandable/main.vue +52 -52
  88. package/src/components/FileExportAsync/index.vue +174 -0
  89. package/src/components/FileUploadTable/index.vue +484 -484
  90. package/src/components/Filters/index.vue +369 -369
  91. package/src/components/Filters/indexO.vue +104 -104
  92. package/src/components/FlowStep/index.vue +68 -68
  93. package/src/components/FooterBox/index.vue +21 -21
  94. package/src/components/GeneralCard/index.vue +15 -15
  95. package/src/components/InputNumber/index.vue +153 -153
  96. package/src/components/InputNumber/numberRange.vue +47 -47
  97. package/src/components/InputSearch/index.vue +75 -75
  98. package/src/components/Layout/.DS_Store +0 -0
  99. package/src/components/Layout/AsideNav/index.vue +119 -144
  100. package/src/components/Layout/AsideNav/menuItem.vue +34 -0
  101. package/src/components/Layout/AsideNav/submenuTitle.vue +26 -0
  102. package/src/components/Layout/HeaderWrap/changePwd.vue +215 -215
  103. package/src/components/Layout/HeaderWrap/index.vue +348 -333
  104. package/src/components/Layout/HeaderWrap/noticePop.vue +300 -300
  105. package/src/components/Layout/SubContent/index.vue +131 -131
  106. package/src/components/Layout/TabsNav/index.vue +170 -170
  107. package/src/components/Layout/index.vue +529 -529
  108. package/src/components/Layout/utils.js +12 -12
  109. package/src/components/LoginTemporary/form.vue +537 -537
  110. package/src/components/LoginTemporary/index.vue +122 -122
  111. package/src/components/LoginTemporary/qrcode.vue +90 -90
  112. package/src/components/LoginTemporary/retrievePw.vue +28 -28
  113. package/src/components/LoginTemporary/utils.js +73 -73
  114. package/src/components/MicroApp/index.js +67 -67
  115. package/src/components/MicroFrame/index.vue +95 -95
  116. package/src/components/MoreTab/index.vue +232 -232
  117. package/src/components/NavMenu/index.vue +60 -60
  118. package/src/components/NstcG6Components/NstcDialog/NstcDialog.vue +184 -184
  119. package/src/components/PageLayout/page.vue +15 -15
  120. package/src/components/Pagination/index.vue +96 -96
  121. package/src/components/SecondaryTab/index.vue +58 -58
  122. package/src/components/SelectLazy/index.vue +75 -75
  123. package/src/components/SelectTree/SelectTreeLazy.vue +241 -241
  124. package/src/components/SelectTree/index.vue +205 -205
  125. package/src/components/ShowColumn/index.vue +204 -204
  126. package/src/components/Sifting/index.vue +99 -99
  127. package/src/components/Statis/index.vue +97 -97
  128. package/src/components/Statis/statisItem.vue +54 -54
  129. package/src/components/Statis/statisPopover.vue +55 -55
  130. package/src/components/Step/index.vue +38 -38
  131. package/src/components/Suspend/index.vue +72 -72
  132. package/src/components/Table/index.vue +179 -179
  133. package/src/components/Table/indexO.vue +149 -149
  134. package/src/components/Task/index.vue +26 -26
  135. package/src/components/TertiaryTab/index.vue +53 -53
  136. package/src/components/TimePicker/index.vue +28 -28
  137. package/src/components/Upload/index.vue +242 -242
  138. package/src/components/WornPagination/index.vue +73 -73
  139. package/src/directives/VClickOutside/index.js +19 -19
  140. package/src/directives/VHas/index.js +32 -32
  141. package/src/directives/VMove/index.js +42 -42
  142. package/src/directives/VTitle/index.js +64 -56
  143. package/src/directives/VTitle/tooltip.vue +21 -21
  144. package/src/index.js +225 -218
  145. package/src/plugins/CompatibleOld/index.js +57 -57
  146. package/src/plugins/Print/index.js +4 -4
  147. package/src/plugins/Print/print-js/.babelrc +12 -12
  148. package/src/plugins/Print/print-js/LICENSE +21 -21
  149. package/src/plugins/Print/print-js/README.md +98 -98
  150. package/src/plugins/Print/print-js/dist/print.css +96 -96
  151. package/src/plugins/Print/print-js/dist/print.js +990 -990
  152. package/src/plugins/Print/print-js/package.json +60 -60
  153. package/src/plugins/Print/print-js/src/index.d.ts +45 -45
  154. package/src/plugins/Print/print-js/src/index.js +10 -10
  155. package/src/plugins/Print/print-js/src/js/browser.js +33 -33
  156. package/src/plugins/Print/print-js/src/js/functions.js +103 -103
  157. package/src/plugins/Print/print-js/src/js/html.js +70 -70
  158. package/src/plugins/Print/print-js/src/js/image.js +48 -48
  159. package/src/plugins/Print/print-js/src/js/init.js +168 -168
  160. package/src/plugins/Print/print-js/src/js/json.js +109 -109
  161. package/src/plugins/Print/print-js/src/js/modal.js +62 -62
  162. package/src/plugins/Print/print-js/src/js/pdf.js +62 -62
  163. package/src/plugins/Print/print-js/src/js/print.js +102 -102
  164. package/src/plugins/Print/print-js/src/js/raw-html.js +15 -15
  165. package/src/plugins/Print/print-js/src/sass/index.scss +13 -13
  166. package/src/plugins/Print/print-js/src/sass/modules/_colors.scss +9 -9
  167. package/src/plugins/Print/print-js/src/sass/partials/_modal.scss +40 -40
  168. package/src/plugins/Print/print-js/src/sass/partials/_spinner.scss +45 -45
  169. package/src/plugins/Print/print.js +2 -2
  170. package/src/plugins/Print/print.scss +1 -1
  171. package/src/plugins/SetMenuTree/index.vue +41 -41
  172. package/src/plugins/SetMenuTree/logoIcon.vue +37 -37
  173. package/src/plugins/SetMenuTree/setmenutree.vue +427 -427
  174. package/src/plugins/SetMenuTree/utils.js +74 -74
  175. package/src/plugins/Sign/InfosecNetSignCNGAgent.min.js +2000 -2000
  176. package/src/plugins/Sign/index.js +65 -65
  177. package/src/plugins/Sign/sign.js +1 -1
  178. package/src/plugins/setTabsForSub.js +2 -2
  179. package/src/utils/auth.js +53 -53
  180. package/src/utils/axios.js +203 -203
  181. package/src/utils/downloadBlob.js +19 -19
  182. package/src/utils/forEachs.js +16 -16
  183. package/src/utils/getScrollContainer.js +43 -43
  184. package/src/utils/i18n/cn2hk.json +1270 -1270
  185. package/src/utils/i18n/index.js +54 -54
  186. package/src/utils/list2tree.js +36 -36
  187. package/src/utils/msgboxPor.js +26 -26
  188. package/src/utils/print.js +161 -161
  189. package/src/utils/relaNo.js +69 -69
  190. package/src/utils/repairElementUI.js +66 -66
  191. package/src/utils/urlToGo.js +82 -82
  192. package/style/css/normalize.scss +723 -726
  193. package/style/fonts/iconfont.022f36c4.woff2 +0 -0
  194. package/style/fonts/iconfont.4a1b2c93.woff +0 -0
  195. package/style/fonts/iconfont.a9febaa2.ttf +0 -0
  196. package/style/index.css +3 -2
  197. package/style/index.css.map +1 -1
  198. package/style/pageDemo/demo-1.vue +130 -131
  199. package/style/pageDemo/demo-2.vue +35 -35
  200. package/style/pageDemo/demo-3.vue +22 -22
  201. package/style/pageDemo/seeCode.js +20 -20
  202. package/style/server-config.jsonc +663 -596
@@ -1,185 +1,185 @@
1
- <template>
2
- <el-scrollbar id="page-scrollbar" style="height: 100%">
3
- <div ref="Anchor">
4
- <slot></slot>
5
- <ul class="n20-anchor">
6
- <li
7
- v-for="(item, index) in AnchorNavList"
8
- :key="index"
9
- :class="[
10
- 'n20-anchor-item',
11
- value === item.id ? 'n20-anchor-activit' : ''
12
- ]"
13
- @click="getAnchorItem(item.id, index)"
14
- >
15
- {{ item.title }}
16
- </li>
17
- </ul>
18
- </div>
19
- </el-scrollbar>
20
- </template>
21
-
22
- <script>
23
- import {
24
- getScrollContainer,
25
- vueDebounce
26
- } from '../../utils/getScrollContainer.js'
27
-
28
- export default {
29
- name: 'Anchor',
30
- props: {
31
- scrollDom: {
32
- type: String,
33
- default: ''
34
- },
35
- // 默认选中tab按钮
36
- value: {
37
- type: String,
38
- default: ''
39
- }
40
- },
41
- data() {
42
- return {
43
- AnchorNavList: [], // 按钮数据
44
- AnchorNavMap: {}, // 楼层高度的映射
45
- scrollDisabled: false, //禁止滚动函数执行
46
- valueType: 1, //当前楼层改变的类型,1是组件传递、按钮直达改变,2是通过滚动监听自动改变
47
- scrollFunDebounceFun: vueDebounce('scrollFun', 100)
48
- }
49
- },
50
- computed: {
51
- scrollWrap() {
52
- if (this.scrollDom) {
53
- return document.querySelector(this.scrollDom)
54
- } else {
55
- return getScrollContainer(this.$refs.Anchor, true)
56
- }
57
- }
58
- },
59
- watch: {
60
- // 监听楼层变化,当为父组件传递,或者按钮直达时,手动滚动到当前楼层
61
- value: function (val) {
62
- this.valueType === 1 && this.scrollDomFun(this.AnchorNavMap[val])
63
- }
64
- },
65
- async mounted() {
66
- await this.init()
67
- // 如果传了当前楼层,直接到达对应的高度
68
- if (this.value) {
69
- this.scrollWrap.scrollTop = this.AnchorNavMap[this.value]
70
- } else {
71
- //没有传楼层,则根据当前高度自动获取
72
- this.getAnchorValue(this.scrollWrap.scrollTop)
73
- }
74
- this.scrollWrap.addEventListener('scroll', this.scrollFunDebounce)
75
- },
76
- beforeDestroy() {
77
- this.scrollWrap.removeEventListener('scroll', this.scrollFunDebounce)
78
- },
79
- methods: {
80
- // 初始化,获取电梯按钮数据,获取楼层高度映射
81
- init() {
82
- let parentTop =
83
- this.$refs.Anchor.getBoundingClientRect().top -
84
- this.scrollWrap.getBoundingClientRect().top
85
- let list = this.$children[0].$children.map((item) => {
86
- let rect = item.$el.getBoundingClientRect()
87
- let itemScrollTop = item.$el.offsetTop
88
- this.AnchorNavMap[item.id] = itemScrollTop
89
- return {
90
- scrollTop: itemScrollTop,
91
- top: rect.top - parentTop,
92
- bottom: rect.bottom - parentTop,
93
- height: rect.height,
94
- title: item.title,
95
- id: item.id
96
- }
97
- })
98
- // 去掉多余的节点
99
- this.AnchorNavList = list.filter(
100
- (val) => val.id !== undefined && val.title !== undefined
101
- )
102
- },
103
- //滚动的函数
104
- scrollFun(e) {
105
- this.getAnchorValue(e.target.scrollTop)
106
- },
107
- scrollFunDebounce(e) {
108
- !this.scrollDisabled && this.scrollFunDebounceFun(e)
109
- },
110
- // 根据当前高度获取楼层位置
111
- getAnchorValue(scrollTop) {
112
- let arr = []
113
- for (let i = 0; i < this.AnchorNavList.length; i++) {
114
- let item = this.AnchorNavList[i]
115
- let height = this.scrollWrap.getBoundingClientRect().height + scrollTop
116
- let value = 0
117
- if (scrollTop <= item.top) {
118
- value = height - item.top
119
- if (value > item.height) {
120
- value = item.height
121
- } else if (value < 0) {
122
- value = 0
123
- }
124
- } else if (scrollTop > item.top && scrollTop <= item.bottom) {
125
- value = item.bottom - scrollTop
126
- }
127
- value = value / item.height
128
- arr.push(value)
129
- }
130
- let max = Math.max(...arr)
131
- for (let i = 0; i < arr.length; i++) {
132
- if (arr[i] === max) {
133
- this.valueType = 2
134
- this.$emit('input', this.AnchorNavList[i].id)
135
- break
136
- }
137
- }
138
- },
139
- getAnchorItem(id, i) {
140
- //直达楼层
141
- if (id === this.value || this.scrollDisabled) {
142
- return
143
- }
144
- this.$children[0].$children[i].show = true
145
- this.valueType = 1
146
- this.$emit('input', id)
147
- },
148
- // 模拟滚动
149
- scrollDomFun(itemScrollTop) {
150
- this.scrollDisabled = true //模拟滚动过程中,禁用直达楼层和监听的滚动事件
151
- let speed = 50
152
- let scrollTop = this.scrollWrap.scrollTop
153
- if (itemScrollTop > scrollTop) {
154
- // 向下滚动
155
- let timer = setInterval(() => {
156
- scrollTop += speed
157
- if (scrollTop < itemScrollTop) {
158
- this.scrollWrap.scrollTop = scrollTop
159
- } else {
160
- this.scrollWrap.scrollTop = itemScrollTop
161
- clearInterval(timer)
162
- setTimeout(() => {
163
- this.scrollDisabled = false
164
- }, 100)
165
- }
166
- }, 20)
167
- } else {
168
- // 向上滚动
169
- let timer = setInterval(() => {
170
- scrollTop -= speed
171
- if (scrollTop >= itemScrollTop) {
172
- this.scrollWrap.scrollTop = scrollTop
173
- } else {
174
- this.scrollWrap.scrollTop = itemScrollTop
175
- clearInterval(timer)
176
- setTimeout(() => {
177
- this.scrollDisabled = false
178
- }, 100)
179
- }
180
- }, 20)
181
- }
182
- }
183
- }
184
- }
185
- </script>
1
+ <template>
2
+ <el-scrollbar id="page-scrollbar" style="height: 100%">
3
+ <div ref="Anchor">
4
+ <slot></slot>
5
+ <ul class="n20-anchor">
6
+ <li
7
+ v-for="(item, index) in AnchorNavList"
8
+ :key="index"
9
+ :class="[
10
+ 'n20-anchor-item',
11
+ value === item.id ? 'n20-anchor-activit' : ''
12
+ ]"
13
+ @click="getAnchorItem(item.id, index)"
14
+ >
15
+ {{ item.title }}
16
+ </li>
17
+ </ul>
18
+ </div>
19
+ </el-scrollbar>
20
+ </template>
21
+
22
+ <script>
23
+ import {
24
+ getScrollContainer,
25
+ vueDebounce
26
+ } from '../../utils/getScrollContainer.js'
27
+
28
+ export default {
29
+ name: 'Anchor',
30
+ props: {
31
+ scrollDom: {
32
+ type: String,
33
+ default: ''
34
+ },
35
+ // 默认选中tab按钮
36
+ value: {
37
+ type: String,
38
+ default: ''
39
+ }
40
+ },
41
+ data() {
42
+ return {
43
+ AnchorNavList: [], // 按钮数据
44
+ AnchorNavMap: {}, // 楼层高度的映射
45
+ scrollDisabled: false, //禁止滚动函数执行
46
+ valueType: 1, //当前楼层改变的类型,1是组件传递、按钮直达改变,2是通过滚动监听自动改变
47
+ scrollFunDebounceFun: vueDebounce('scrollFun', 100)
48
+ }
49
+ },
50
+ computed: {
51
+ scrollWrap() {
52
+ if (this.scrollDom) {
53
+ return document.querySelector(this.scrollDom)
54
+ } else {
55
+ return getScrollContainer(this.$refs.Anchor, true)
56
+ }
57
+ }
58
+ },
59
+ watch: {
60
+ // 监听楼层变化,当为父组件传递,或者按钮直达时,手动滚动到当前楼层
61
+ value: function (val) {
62
+ this.valueType === 1 && this.scrollDomFun(this.AnchorNavMap[val])
63
+ }
64
+ },
65
+ async mounted() {
66
+ await this.init()
67
+ // 如果传了当前楼层,直接到达对应的高度
68
+ if (this.value) {
69
+ this.scrollWrap.scrollTop = this.AnchorNavMap[this.value]
70
+ } else {
71
+ //没有传楼层,则根据当前高度自动获取
72
+ this.getAnchorValue(this.scrollWrap.scrollTop)
73
+ }
74
+ this.scrollWrap.addEventListener('scroll', this.scrollFunDebounce)
75
+ },
76
+ beforeDestroy() {
77
+ this.scrollWrap.removeEventListener('scroll', this.scrollFunDebounce)
78
+ },
79
+ methods: {
80
+ // 初始化,获取电梯按钮数据,获取楼层高度映射
81
+ init() {
82
+ let parentTop =
83
+ this.$refs.Anchor.getBoundingClientRect().top -
84
+ this.scrollWrap.getBoundingClientRect().top
85
+ let list = this.$children[0].$children.map((item) => {
86
+ let rect = item.$el.getBoundingClientRect()
87
+ let itemScrollTop = item.$el.offsetTop
88
+ this.AnchorNavMap[item.id] = itemScrollTop
89
+ return {
90
+ scrollTop: itemScrollTop,
91
+ top: rect.top - parentTop,
92
+ bottom: rect.bottom - parentTop,
93
+ height: rect.height,
94
+ title: item.title,
95
+ id: item.id
96
+ }
97
+ })
98
+ // 去掉多余的节点
99
+ this.AnchorNavList = list.filter(
100
+ (val) => val.id !== undefined && val.title !== undefined
101
+ )
102
+ },
103
+ //滚动的函数
104
+ scrollFun(e) {
105
+ this.getAnchorValue(e.target.scrollTop)
106
+ },
107
+ scrollFunDebounce(e) {
108
+ !this.scrollDisabled && this.scrollFunDebounceFun(e)
109
+ },
110
+ // 根据当前高度获取楼层位置
111
+ getAnchorValue(scrollTop) {
112
+ let arr = []
113
+ for (let i = 0; i < this.AnchorNavList.length; i++) {
114
+ let item = this.AnchorNavList[i]
115
+ let height = this.scrollWrap.getBoundingClientRect().height + scrollTop
116
+ let value = 0
117
+ if (scrollTop <= item.top) {
118
+ value = height - item.top
119
+ if (value > item.height) {
120
+ value = item.height
121
+ } else if (value < 0) {
122
+ value = 0
123
+ }
124
+ } else if (scrollTop > item.top && scrollTop <= item.bottom) {
125
+ value = item.bottom - scrollTop
126
+ }
127
+ value = value / item.height
128
+ arr.push(value)
129
+ }
130
+ let max = Math.max(...arr)
131
+ for (let i = 0; i < arr.length; i++) {
132
+ if (arr[i] === max) {
133
+ this.valueType = 2
134
+ this.$emit('input', this.AnchorNavList[i].id)
135
+ break
136
+ }
137
+ }
138
+ },
139
+ getAnchorItem(id, i) {
140
+ //直达楼层
141
+ if (id === this.value || this.scrollDisabled) {
142
+ return
143
+ }
144
+ this.$children[0].$children[i].show = true
145
+ this.valueType = 1
146
+ this.$emit('input', id)
147
+ },
148
+ // 模拟滚动
149
+ scrollDomFun(itemScrollTop) {
150
+ this.scrollDisabled = true //模拟滚动过程中,禁用直达楼层和监听的滚动事件
151
+ let speed = 50
152
+ let scrollTop = this.scrollWrap.scrollTop
153
+ if (itemScrollTop > scrollTop) {
154
+ // 向下滚动
155
+ let timer = setInterval(() => {
156
+ scrollTop += speed
157
+ if (scrollTop < itemScrollTop) {
158
+ this.scrollWrap.scrollTop = scrollTop
159
+ } else {
160
+ this.scrollWrap.scrollTop = itemScrollTop
161
+ clearInterval(timer)
162
+ setTimeout(() => {
163
+ this.scrollDisabled = false
164
+ }, 100)
165
+ }
166
+ }, 20)
167
+ } else {
168
+ // 向上滚动
169
+ let timer = setInterval(() => {
170
+ scrollTop -= speed
171
+ if (scrollTop >= itemScrollTop) {
172
+ this.scrollWrap.scrollTop = scrollTop
173
+ } else {
174
+ this.scrollWrap.scrollTop = itemScrollTop
175
+ clearInterval(timer)
176
+ setTimeout(() => {
177
+ this.scrollDisabled = false
178
+ }, 100)
179
+ }
180
+ }, 20)
181
+ }
182
+ }
183
+ }
184
+ }
185
+ </script>