uview-pro 0.1.0 → 0.1.1

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 (238) hide show
  1. package/changelog.md +424 -406
  2. package/components/u-action-sheet/types.ts +35 -35
  3. package/components/u-action-sheet/u-action-sheet.vue +160 -160
  4. package/components/u-alert-tips/types.ts +39 -39
  5. package/components/u-alert-tips/u-alert-tips.vue +212 -212
  6. package/components/u-avatar/types.ts +34 -34
  7. package/components/u-avatar/u-avatar.vue +193 -193
  8. package/components/u-avatar-cropper/types.ts +23 -23
  9. package/components/u-avatar-cropper/u-avatar-cropper.vue +286 -286
  10. package/components/u-avatar-cropper/weCropper.d.ts +62 -62
  11. package/components/u-avatar-cropper/weCropper.js +1253 -1253
  12. package/components/u-avatar-cropper/weCropper.ts +1255 -1255
  13. package/components/u-back-top/types.ts +39 -39
  14. package/components/u-back-top/u-back-top.vue +125 -125
  15. package/components/u-badge/types.ts +36 -36
  16. package/components/u-badge/u-badge.vue +165 -165
  17. package/components/u-button/types.ts +66 -66
  18. package/components/u-button/u-button.vue +556 -556
  19. package/components/u-calendar/types.ts +63 -63
  20. package/components/u-calendar/u-calendar.vue +592 -592
  21. package/components/u-car-keyboard/types.ts +12 -12
  22. package/components/u-car-keyboard/u-car-keyboard.vue +234 -234
  23. package/components/u-card/types.ts +59 -59
  24. package/components/u-card/u-card.vue +194 -194
  25. package/components/u-cell-group/types.ts +17 -17
  26. package/components/u-cell-group/u-cell-group.vue +50 -50
  27. package/components/u-cell-item/types.ts +54 -54
  28. package/components/u-cell-item/u-cell-item.vue +202 -202
  29. package/components/u-checkbox/types.ts +31 -31
  30. package/components/u-checkbox/u-checkbox.vue +267 -267
  31. package/components/u-checkbox-group/types.ts +32 -32
  32. package/components/u-checkbox-group/u-checkbox-group.vue +79 -79
  33. package/components/u-circle-progress/types.ts +52 -52
  34. package/components/u-circle-progress/u-circle-progress.vue +187 -187
  35. package/components/u-city-select/types.ts +20 -20
  36. package/components/u-city-select/u-city-select.vue +236 -236
  37. package/components/u-col/types.ts +30 -30
  38. package/components/u-col/u-col.vue +123 -123
  39. package/components/u-collapse/types.ts +31 -31
  40. package/components/u-collapse/u-collapse.vue +68 -68
  41. package/components/u-collapse-item/types.ts +25 -25
  42. package/components/u-collapse-item/u-collapse-item.vue +194 -194
  43. package/components/u-column-notice/types.ts +48 -48
  44. package/components/u-column-notice/u-column-notice.vue +176 -176
  45. package/components/u-count-down/types.ts +42 -42
  46. package/components/u-count-down/u-count-down.vue +258 -258
  47. package/components/u-count-to/types.ts +32 -32
  48. package/components/u-count-to/u-count-to.vue +241 -241
  49. package/components/u-divider/types.ts +31 -31
  50. package/components/u-divider/u-divider.vue +121 -121
  51. package/components/u-dropdown/types.ts +32 -32
  52. package/components/u-dropdown/u-dropdown.vue +289 -289
  53. package/components/u-dropdown-item/types.ts +27 -27
  54. package/components/u-dropdown-item/u-dropdown-item.vue +123 -123
  55. package/components/u-empty/types.ts +36 -36
  56. package/components/u-empty/u-empty.vue +88 -88
  57. package/components/u-field/types.ts +69 -69
  58. package/components/u-field/u-field.vue +354 -354
  59. package/components/u-form/u-form.vue +132 -132
  60. package/components/u-form-item/u-form-item.vue +417 -417
  61. package/components/u-full-screen/types.ts +14 -14
  62. package/components/u-full-screen/u-full-screen.vue +82 -82
  63. package/components/u-gap/types.ts +18 -18
  64. package/components/u-gap/u-gap.vue +40 -40
  65. package/components/u-grid/types.ts +19 -19
  66. package/components/u-grid/u-grid.vue +93 -93
  67. package/components/u-grid-item/types.ts +16 -16
  68. package/components/u-grid-item/u-grid-item.vue +130 -130
  69. package/components/u-icon/types.ts +62 -62
  70. package/components/u-icon/u-icon.vue +274 -274
  71. package/components/u-image/types.ts +51 -51
  72. package/components/u-image/u-image.vue +222 -222
  73. package/components/u-index-anchor/types.ts +16 -16
  74. package/components/u-index-anchor/u-index-anchor.vue +86 -86
  75. package/components/u-index-list/types.ts +43 -43
  76. package/components/u-index-list/u-index-list.vue +355 -355
  77. package/components/u-input/types.ts +140 -140
  78. package/components/u-input/u-input.vue +264 -255
  79. package/components/u-keyboard/types.ts +40 -40
  80. package/components/u-keyboard/u-keyboard.vue +158 -158
  81. package/components/u-lazy-load/types.ts +37 -37
  82. package/components/u-lazy-load/u-lazy-load.vue +233 -233
  83. package/components/u-line/types.ts +44 -44
  84. package/components/u-line/u-line.vue +59 -59
  85. package/components/u-line-progress/types.ts +58 -58
  86. package/components/u-line-progress/u-line-progress.vue +109 -109
  87. package/components/u-link/types.ts +43 -43
  88. package/components/u-link/u-link.vue +75 -75
  89. package/components/u-loading/types.ts +35 -35
  90. package/components/u-loading/u-loading.vue +90 -90
  91. package/components/u-loading-popup/types.ts +26 -26
  92. package/components/u-loading-popup/u-loading-popup.vue +239 -239
  93. package/components/u-loadmore/types.ts +79 -79
  94. package/components/u-loadmore/u-loadmore.vue +140 -140
  95. package/components/u-mask/types.ts +43 -43
  96. package/components/u-mask/u-mask.vue +106 -106
  97. package/components/u-message-input/types.ts +74 -74
  98. package/components/u-message-input/u-message-input.vue +255 -255
  99. package/components/u-modal/types.ts +118 -118
  100. package/components/u-modal/u-modal.vue +204 -204
  101. package/components/u-navbar/types.ts +103 -103
  102. package/components/u-navbar/u-navbar.vue +226 -226
  103. package/components/u-no-network/image.ts +2 -2
  104. package/components/u-no-network/types.ts +28 -28
  105. package/components/u-no-network/u-no-network.vue +290 -290
  106. package/components/u-notice-bar/types.ts +111 -111
  107. package/components/u-notice-bar/u-notice-bar.vue +174 -174
  108. package/components/u-number-box/types.ts +42 -42
  109. package/components/u-number-box/u-number-box.vue +312 -312
  110. package/components/u-number-keyboard/types.ts +26 -26
  111. package/components/u-number-keyboard/u-number-keyboard.vue +166 -166
  112. package/components/u-picker/types.ts +123 -123
  113. package/components/u-picker/u-picker.vue +637 -637
  114. package/components/u-popup/types.ts +59 -59
  115. package/components/u-popup/u-popup.vue +359 -359
  116. package/components/u-radio/types.ts +25 -25
  117. package/components/u-radio/u-radio.vue +258 -258
  118. package/components/u-radio-group/types.ts +29 -29
  119. package/components/u-radio-group/u-radio-group.vue +98 -98
  120. package/components/u-rate/types.ts +40 -40
  121. package/components/u-rate/u-rate.vue +234 -234
  122. package/components/u-read-more/types.ts +35 -35
  123. package/components/u-read-more/u-read-more.vue +150 -150
  124. package/components/u-row/types.ts +20 -20
  125. package/components/u-row/u-row.vue +87 -87
  126. package/components/u-row-notice/types.ts +39 -39
  127. package/components/u-row-notice/u-row-notice.vue +213 -213
  128. package/components/u-safe-bottom/u-safe-bottom.vue +46 -46
  129. package/components/u-search/types.ts +53 -53
  130. package/components/u-search/u-search.vue +256 -256
  131. package/components/u-section/types.ts +32 -32
  132. package/components/u-section/u-section.vue +125 -125
  133. package/components/u-select/types.ts +43 -43
  134. package/components/u-select/u-select.vue +361 -361
  135. package/components/u-skeleton/types.ts +20 -20
  136. package/components/u-skeleton/u-skeleton.vue +205 -205
  137. package/components/u-slider/types.ts +32 -32
  138. package/components/u-slider/u-slider.vue +238 -238
  139. package/components/u-status-bar/u-status-bar.vue +65 -65
  140. package/components/u-steps/types.ts +28 -28
  141. package/components/u-steps/u-steps.vue +160 -160
  142. package/components/u-sticky/types.ts +22 -22
  143. package/components/u-sticky/u-sticky.vue +159 -159
  144. package/components/u-subsection/types.ts +36 -36
  145. package/components/u-subsection/u-subsection.vue +328 -328
  146. package/components/u-swipe-action/types.ts +50 -50
  147. package/components/u-swipe-action/u-swipe-action.vue +253 -253
  148. package/components/u-swiper/types.ts +47 -47
  149. package/components/u-swiper/u-swiper.vue +266 -266
  150. package/components/u-switch/types.ts +28 -28
  151. package/components/u-switch/u-switch.vue +136 -136
  152. package/components/u-tabbar/types.ts +36 -36
  153. package/components/u-tabbar/u-tabbar.vue +280 -280
  154. package/components/u-table/types.ts +25 -25
  155. package/components/u-table/u-table.vue +55 -55
  156. package/components/u-tabs/types.ts +51 -51
  157. package/components/u-tabs/u-tabs.vue +284 -284
  158. package/components/u-tabs-swiper/types.ts +53 -53
  159. package/components/u-tabs-swiper/u-tabs-swiper.vue +379 -379
  160. package/components/u-tag/types.ts +37 -37
  161. package/components/u-tag/u-tag.vue +244 -244
  162. package/components/u-td/types.ts +12 -12
  163. package/components/u-td/u-td.vue +87 -87
  164. package/components/u-th/types.ts +12 -12
  165. package/components/u-th/u-th.vue +81 -81
  166. package/components/u-time-line/u-time-line.vue +39 -39
  167. package/components/u-time-line-item/types.ts +14 -14
  168. package/components/u-time-line-item/u-time-line-item.vue +78 -78
  169. package/components/u-toast/types.ts +36 -36
  170. package/components/u-toast/u-toast.vue +233 -233
  171. package/components/u-top-tips/types.ts +14 -14
  172. package/components/u-top-tips/u-top-tips.vue +113 -113
  173. package/components/u-tr/types.ts +8 -8
  174. package/components/u-tr/u-tr.vue +24 -24
  175. package/components/u-upload/types.ts +74 -74
  176. package/components/u-upload/u-upload.vue +545 -545
  177. package/components/u-verification-code/types.ts +22 -22
  178. package/components/u-verification-code/u-verification-code.vue +164 -164
  179. package/components/u-waterfall/types.ts +16 -16
  180. package/components/u-waterfall/u-waterfall.vue +175 -175
  181. package/iconfont.css +912 -912
  182. package/index.scss +23 -23
  183. package/index.ts +202 -204
  184. package/libs/config/config.ts +26 -26
  185. package/libs/config/zIndex.ts +37 -37
  186. package/libs/css/color.scss +155 -155
  187. package/libs/css/common.scss +178 -178
  188. package/libs/css/style.components.scss +7 -7
  189. package/libs/css/style.h5.scss +8 -8
  190. package/libs/css/style.mp.scss +72 -72
  191. package/libs/css/style.nvue.scss +3 -3
  192. package/libs/css/style.vue.scss +177 -177
  193. package/libs/function/$parent.ts +21 -21
  194. package/libs/function/addUnit.ts +13 -13
  195. package/libs/function/color.ts +37 -71
  196. package/libs/function/colorGradient.ts +125 -125
  197. package/libs/function/debounce.ts +28 -28
  198. package/libs/function/deepClone.ts +39 -39
  199. package/libs/function/deepMerge.ts +34 -34
  200. package/libs/function/getParent.ts +59 -59
  201. package/libs/function/getRect.ts +26 -26
  202. package/libs/function/guid.ts +42 -42
  203. package/libs/function/md5.ts +391 -391
  204. package/libs/function/parent.ts +21 -21
  205. package/libs/function/queryParams.ts +60 -60
  206. package/libs/function/random.ts +16 -16
  207. package/libs/function/randomArray.ts +11 -11
  208. package/libs/function/route.ts +118 -118
  209. package/libs/function/styleUtils.ts +83 -83
  210. package/libs/function/sys.ts +15 -15
  211. package/libs/function/test.ts +229 -229
  212. package/libs/function/throttle.ts +31 -31
  213. package/libs/function/timeFormat.ts +54 -54
  214. package/libs/function/timeFrom.ts +48 -48
  215. package/libs/function/toast.ts +14 -14
  216. package/libs/function/trim.ts +21 -21
  217. package/libs/function/type2icon.ts +36 -36
  218. package/libs/hooks/useEmitter.ts +77 -77
  219. package/libs/hooks/useParent.ts +29 -29
  220. package/libs/request/auto-http.ts +76 -76
  221. package/libs/request/index.ts +223 -223
  222. package/libs/store/index.ts +88 -88
  223. package/libs/util/area.ts +3771 -3771
  224. package/libs/util/async-validator.d.ts +62 -62
  225. package/libs/util/async-validator.js +1368 -1368
  226. package/libs/util/city.ts +432 -432
  227. package/libs/util/emitter.ts +102 -102
  228. package/libs/util/mitt.ts +115 -115
  229. package/libs/util/parent.ts +20 -20
  230. package/libs/util/province.ts +37 -37
  231. package/package.json +1 -1
  232. package/readme.md +237 -237
  233. package/theme.scss +38 -38
  234. package/types/components.d.ts +95 -95
  235. package/types/global.d.ts +255 -221
  236. package/types/ignore-errors.d.ts +30 -30
  237. package/types/index.d.ts +90 -90
  238. package/types/uni-app.d.ts +63 -63
@@ -1,176 +1,176 @@
1
- <template>
2
- <view class="u-notice-bar" :style="{ background: computeBgColor, padding: props.padding }" :class="[props.type ? `u-type-${props.type}-light-bg` : '']">
3
- <view class="u-icon-wrap">
4
- <u-icon class="u-left-icon" v-if="props.volumeIcon" name="volume-fill" :size="props.volumeSize" :color="computeColor"></u-icon>
5
- </view>
6
- <swiper
7
- :disable-touch="props.disableTouch"
8
- @change="change"
9
- :autoplay="props.autoplay && props.playState === 'play'"
10
- :vertical="vertical"
11
- circular
12
- :interval="props.duration"
13
- class="u-swiper"
14
- >
15
- <swiper-item v-for="(item, index) in props.list" :key="index" class="u-swiper-item">
16
- <view class="u-news-item u-line-1" :style="textStyle" @tap="click(index)" :class="['u-type-' + props.type]">
17
- {{ item }}
18
- </view>
19
- </swiper-item>
20
- </swiper>
21
- <view class="u-icon-wrap">
22
- <u-icon @click="getMore" class="u-right-icon" v-if="props.moreIcon" name="arrow-right" :size="26" :color="computeColor"></u-icon>
23
- <u-icon @click="close" class="u-right-icon" v-if="props.closeIcon" name="close" :size="24" :color="computeColor"></u-icon>
24
- </view>
25
- </view>
26
- </template>
27
-
28
- <script setup lang="ts">
29
- import { computed } from 'vue';
30
- import { ColumnNoticeProps } from './types';
31
-
32
- defineOptions({ name: 'u-column-notice' });
33
-
34
- /**
35
- * u-column-notice 通告栏
36
- * @property {Array} list 显示的内容,数组
37
- * @property {String} type 显示的主题,success|error|primary|info|warning
38
- * @property {Boolean} volumeIcon 是否显示左侧的音量图标
39
- * @property {Boolean} moreIcon 是否显示右侧的右箭头图标
40
- * @property {Boolean} closeIcon 是否显示右侧的关闭图标
41
- * @property {Boolean} autoplay 是否自动播放
42
- * @property {String} color 文字颜色,各图标也会使用文字颜色
43
- * @property {String} bgColor 背景颜色
44
- * @property {String} direction 滚动方向,row-水平滚动,column-垂直滚动
45
- * @property {Boolean} show 是否显示
46
- * @property {String|Number} fontSize 字体大小,单位rpx
47
- * @property {String|Number} duration 滚动一个周期的时间长,单位ms
48
- * @property {String|Number} volumeSize 音量喇叭的大小
49
- * @property {Number} speed 水平滚动时的滚动速度,即每秒滚动多少rpx
50
- * @property {Boolean} isCircular 水平滚动时,是否采用衔接形式滚动
51
- * @property {String} mode 滚动方向,horizontal-水平滚动,vertical-垂直滚动
52
- * @property {String} playState 播放状态,play-播放,paused-暂停
53
- * @property {Boolean} disableTouch 是否禁止用手滑动切换
54
- * @property {String|Number} padding 通知的边距
55
- */
56
-
57
- const props = defineProps(ColumnNoticeProps);
58
-
59
- const emit = defineEmits<{ (e: 'click', index: number): void; (e: 'close'): void; (e: 'getMore'): void; (e: 'end'): void }>();
60
-
61
- /**
62
- * 计算字体颜色,如果没有自定义的,就用uview主题颜色
63
- */
64
- const computeColor = computed(() => {
65
- if (props.color) return props.color;
66
- // 如果是无主题,就默认使用content-color
67
- else if (props.type === 'none') return '#606266';
68
- else return props.type;
69
- });
70
-
71
- /**
72
- * 文字内容的样式
73
- */
74
- const textStyle = computed(() => {
75
- const style: Record<string, any> = {};
76
- if (props.color) style.color = props.color;
77
- else if (props.type === 'none') style.color = '#606266';
78
- style.fontSize = props.fontSize + 'rpx';
79
- return style;
80
- });
81
-
82
- /**
83
- * 垂直或者水平滚动
84
- */
85
- const vertical = computed(() => {
86
- return props.mode !== 'horizontal';
87
- });
88
-
89
- /**
90
- * 计算背景颜色
91
- */
92
- const computeBgColor = computed(() => {
93
- if (props.bgColor) return props.bgColor;
94
- else if (props.type === 'none') return 'transparent';
95
- else return '';
96
- });
97
-
98
- /**
99
- * 点击通告栏
100
- */
101
- function click(index: number) {
102
- emit('click', index);
103
- }
104
-
105
- /**
106
- * 点击关闭按钮
107
- */
108
- function close() {
109
- emit('close');
110
- }
111
-
112
- /**
113
- * 点击更多箭头按钮
114
- */
115
- function getMore() {
116
- emit('getMore');
117
- }
118
-
119
- /**
120
- * swiper 切换事件
121
- */
122
- function change(e: { detail: { current: number } }) {
123
- const index = e.detail.current;
124
- if (index === props.list.length - 1) {
125
- emit('end');
126
- }
127
- }
128
- </script>
129
-
130
- <style lang="scss" scoped>
131
- @import '../../libs/css/style.components.scss';
132
-
133
- .u-notice-bar {
134
- width: 100%;
135
- @include vue-flex;
136
- align-items: center;
137
- justify-content: center;
138
- flex-wrap: nowrap;
139
- padding: 18rpx 24rpx;
140
- overflow: hidden;
141
- }
142
-
143
- .u-swiper {
144
- font-size: 26rpx;
145
- height: 32rpx;
146
- @include vue-flex;
147
- align-items: center;
148
- flex: 1;
149
- margin-left: 12rpx;
150
- }
151
-
152
- .u-swiper-item {
153
- @include vue-flex;
154
- align-items: center;
155
- overflow: hidden;
156
- }
157
-
158
- .u-news-item {
159
- overflow: hidden;
160
- }
161
-
162
- .u-right-icon {
163
- margin-left: 12rpx;
164
- /* #ifndef APP-NVUE */
165
- display: inline-flex;
166
- /* #endif */
167
- align-items: center;
168
- }
169
-
170
- .u-left-icon {
171
- /* #ifndef APP-NVUE */
172
- display: inline-flex;
173
- /* #endif */
174
- align-items: center;
175
- }
176
- </style>
1
+ <template>
2
+ <view class="u-notice-bar" :style="{ background: computeBgColor, padding: props.padding }" :class="[props.type ? `u-type-${props.type}-light-bg` : '']">
3
+ <view class="u-icon-wrap">
4
+ <u-icon class="u-left-icon" v-if="props.volumeIcon" name="volume-fill" :size="props.volumeSize" :color="computeColor"></u-icon>
5
+ </view>
6
+ <swiper
7
+ :disable-touch="props.disableTouch"
8
+ @change="change"
9
+ :autoplay="props.autoplay && props.playState === 'play'"
10
+ :vertical="vertical"
11
+ circular
12
+ :interval="props.duration"
13
+ class="u-swiper"
14
+ >
15
+ <swiper-item v-for="(item, index) in props.list" :key="index" class="u-swiper-item">
16
+ <view class="u-news-item u-line-1" :style="textStyle" @tap="click(index)" :class="['u-type-' + props.type]">
17
+ {{ item }}
18
+ </view>
19
+ </swiper-item>
20
+ </swiper>
21
+ <view class="u-icon-wrap">
22
+ <u-icon @click="getMore" class="u-right-icon" v-if="props.moreIcon" name="arrow-right" :size="26" :color="computeColor"></u-icon>
23
+ <u-icon @click="close" class="u-right-icon" v-if="props.closeIcon" name="close" :size="24" :color="computeColor"></u-icon>
24
+ </view>
25
+ </view>
26
+ </template>
27
+
28
+ <script setup lang="ts">
29
+ import { computed } from 'vue';
30
+ import { ColumnNoticeProps } from './types';
31
+
32
+ defineOptions({ name: 'u-column-notice' });
33
+
34
+ /**
35
+ * u-column-notice 通告栏
36
+ * @property {Array} list 显示的内容,数组
37
+ * @property {String} type 显示的主题,success|error|primary|info|warning
38
+ * @property {Boolean} volumeIcon 是否显示左侧的音量图标
39
+ * @property {Boolean} moreIcon 是否显示右侧的右箭头图标
40
+ * @property {Boolean} closeIcon 是否显示右侧的关闭图标
41
+ * @property {Boolean} autoplay 是否自动播放
42
+ * @property {String} color 文字颜色,各图标也会使用文字颜色
43
+ * @property {String} bgColor 背景颜色
44
+ * @property {String} direction 滚动方向,row-水平滚动,column-垂直滚动
45
+ * @property {Boolean} show 是否显示
46
+ * @property {String|Number} fontSize 字体大小,单位rpx
47
+ * @property {String|Number} duration 滚动一个周期的时间长,单位ms
48
+ * @property {String|Number} volumeSize 音量喇叭的大小
49
+ * @property {Number} speed 水平滚动时的滚动速度,即每秒滚动多少rpx
50
+ * @property {Boolean} isCircular 水平滚动时,是否采用衔接形式滚动
51
+ * @property {String} mode 滚动方向,horizontal-水平滚动,vertical-垂直滚动
52
+ * @property {String} playState 播放状态,play-播放,paused-暂停
53
+ * @property {Boolean} disableTouch 是否禁止用手滑动切换
54
+ * @property {String|Number} padding 通知的边距
55
+ */
56
+
57
+ const props = defineProps(ColumnNoticeProps);
58
+
59
+ const emit = defineEmits<{ (e: 'click', index: number): void; (e: 'close'): void; (e: 'getMore'): void; (e: 'end'): void }>();
60
+
61
+ /**
62
+ * 计算字体颜色,如果没有自定义的,就用uview主题颜色
63
+ */
64
+ const computeColor = computed(() => {
65
+ if (props.color) return props.color;
66
+ // 如果是无主题,就默认使用content-color
67
+ else if (props.type === 'none') return '#606266';
68
+ else return props.type;
69
+ });
70
+
71
+ /**
72
+ * 文字内容的样式
73
+ */
74
+ const textStyle = computed(() => {
75
+ const style: Record<string, any> = {};
76
+ if (props.color) style.color = props.color;
77
+ else if (props.type === 'none') style.color = '#606266';
78
+ style.fontSize = props.fontSize + 'rpx';
79
+ return style;
80
+ });
81
+
82
+ /**
83
+ * 垂直或者水平滚动
84
+ */
85
+ const vertical = computed(() => {
86
+ return props.mode !== 'horizontal';
87
+ });
88
+
89
+ /**
90
+ * 计算背景颜色
91
+ */
92
+ const computeBgColor = computed(() => {
93
+ if (props.bgColor) return props.bgColor;
94
+ else if (props.type === 'none') return 'transparent';
95
+ else return '';
96
+ });
97
+
98
+ /**
99
+ * 点击通告栏
100
+ */
101
+ function click(index: number) {
102
+ emit('click', index);
103
+ }
104
+
105
+ /**
106
+ * 点击关闭按钮
107
+ */
108
+ function close() {
109
+ emit('close');
110
+ }
111
+
112
+ /**
113
+ * 点击更多箭头按钮
114
+ */
115
+ function getMore() {
116
+ emit('getMore');
117
+ }
118
+
119
+ /**
120
+ * swiper 切换事件
121
+ */
122
+ function change(e: { detail: { current: number } }) {
123
+ const index = e.detail.current;
124
+ if (index === props.list.length - 1) {
125
+ emit('end');
126
+ }
127
+ }
128
+ </script>
129
+
130
+ <style lang="scss" scoped>
131
+ @import '../../libs/css/style.components.scss';
132
+
133
+ .u-notice-bar {
134
+ width: 100%;
135
+ @include vue-flex;
136
+ align-items: center;
137
+ justify-content: center;
138
+ flex-wrap: nowrap;
139
+ padding: 18rpx 24rpx;
140
+ overflow: hidden;
141
+ }
142
+
143
+ .u-swiper {
144
+ font-size: 26rpx;
145
+ height: 32rpx;
146
+ @include vue-flex;
147
+ align-items: center;
148
+ flex: 1;
149
+ margin-left: 12rpx;
150
+ }
151
+
152
+ .u-swiper-item {
153
+ @include vue-flex;
154
+ align-items: center;
155
+ overflow: hidden;
156
+ }
157
+
158
+ .u-news-item {
159
+ overflow: hidden;
160
+ }
161
+
162
+ .u-right-icon {
163
+ margin-left: 12rpx;
164
+ /* #ifndef APP-NVUE */
165
+ display: inline-flex;
166
+ /* #endif */
167
+ align-items: center;
168
+ }
169
+
170
+ .u-left-icon {
171
+ /* #ifndef APP-NVUE */
172
+ display: inline-flex;
173
+ /* #endif */
174
+ align-items: center;
175
+ }
176
+ </style>
@@ -1,42 +1,42 @@
1
- import type { ExtractPropTypes, PropType } from 'vue';
2
-
3
- /**
4
- * u-count-down 倒计时 Props
5
- * @description 该组件一般使用于某个活动的截止时间上,通过数字的变化,给用户明确的时间感受,提示用户进行某一个行为操作。
6
- */
7
- export const CountDownProps = {
8
- /** 倒计时的时间,秒为单位 */
9
- timestamp: { type: [Number, String] as PropType<number | string>, default: 0 },
10
- /** 是否自动开始倒计时 */
11
- autoplay: { type: Boolean, default: true },
12
- /** 分隔符 */
13
- separator: { type: String, default: 'colon' },
14
- /** 分隔符的大小,单位rpx */
15
- separatorSize: { type: [Number, String] as PropType<number | string>, default: 30 },
16
- /** 分隔符颜色 */
17
- separatorColor: { type: String, default: '#303133' },
18
- /** 字体颜色 */
19
- color: { type: String, default: '#303133' },
20
- /** 字体大小,单位rpx */
21
- fontSize: { type: [Number, String] as PropType<number | string>, default: 30 },
22
- /** 背景颜色 */
23
- bgColor: { type: String, default: '#fff' },
24
- /** 数字框高度,单位rpx */
25
- height: { type: [Number, String] as PropType<number | string>, default: 'auto' },
26
- /** 是否显示数字框 */
27
- showBorder: { type: Boolean, default: false },
28
- /** 边框颜色 */
29
- borderColor: { type: String, default: '#303133' },
30
- /** 是否显示秒 */
31
- showSeconds: { type: Boolean, default: true },
32
- /** 是否显示分钟 */
33
- showMinutes: { type: Boolean, default: true },
34
- /** 是否显示小时 */
35
- showHours: { type: Boolean, default: true },
36
- /** 是否显示“天” */
37
- showDays: { type: Boolean, default: true },
38
- /** 当"天"的部分为0时,不显示 */
39
- hideZeroDay: { type: Boolean, default: false }
40
- };
41
-
42
- export type CountDownProps = ExtractPropTypes<typeof CountDownProps>;
1
+ import type { ExtractPropTypes, PropType } from 'vue';
2
+
3
+ /**
4
+ * u-count-down 倒计时 Props
5
+ * @description 该组件一般使用于某个活动的截止时间上,通过数字的变化,给用户明确的时间感受,提示用户进行某一个行为操作。
6
+ */
7
+ export const CountDownProps = {
8
+ /** 倒计时的时间,秒为单位 */
9
+ timestamp: { type: [Number, String] as PropType<number | string>, default: 0 },
10
+ /** 是否自动开始倒计时 */
11
+ autoplay: { type: Boolean, default: true },
12
+ /** 分隔符 */
13
+ separator: { type: String, default: 'colon' },
14
+ /** 分隔符的大小,单位rpx */
15
+ separatorSize: { type: [Number, String] as PropType<number | string>, default: 30 },
16
+ /** 分隔符颜色 */
17
+ separatorColor: { type: String, default: '#303133' },
18
+ /** 字体颜色 */
19
+ color: { type: String, default: '#303133' },
20
+ /** 字体大小,单位rpx */
21
+ fontSize: { type: [Number, String] as PropType<number | string>, default: 30 },
22
+ /** 背景颜色 */
23
+ bgColor: { type: String, default: '#fff' },
24
+ /** 数字框高度,单位rpx */
25
+ height: { type: [Number, String] as PropType<number | string>, default: 'auto' },
26
+ /** 是否显示数字框 */
27
+ showBorder: { type: Boolean, default: false },
28
+ /** 边框颜色 */
29
+ borderColor: { type: String, default: '#303133' },
30
+ /** 是否显示秒 */
31
+ showSeconds: { type: Boolean, default: true },
32
+ /** 是否显示分钟 */
33
+ showMinutes: { type: Boolean, default: true },
34
+ /** 是否显示小时 */
35
+ showHours: { type: Boolean, default: true },
36
+ /** 是否显示“天” */
37
+ showDays: { type: Boolean, default: true },
38
+ /** 当"天"的部分为0时,不显示 */
39
+ hideZeroDay: { type: Boolean, default: false }
40
+ };
41
+
42
+ export type CountDownProps = ExtractPropTypes<typeof CountDownProps>;