uview-ui-wjf 1.0.0

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 (368) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +71 -0
  3. package/changelog.md +388 -0
  4. package/components/u--form/u--form.vue +92 -0
  5. package/components/u--image/u--image.vue +73 -0
  6. package/components/u--input/u--input.vue +115 -0
  7. package/components/u--text/u--text.vue +72 -0
  8. package/components/u--textarea/u--textarea.vue +85 -0
  9. package/components/u-action-sheet/props.js +54 -0
  10. package/components/u-action-sheet/u-action-sheet.vue +278 -0
  11. package/components/u-album/props.js +59 -0
  12. package/components/u-album/u-album.vue +259 -0
  13. package/components/u-alert/props.js +44 -0
  14. package/components/u-alert/u-alert.vue +243 -0
  15. package/components/u-avatar/props.js +78 -0
  16. package/components/u-avatar/u-avatar.vue +173 -0
  17. package/components/u-avatar-group/props.js +52 -0
  18. package/components/u-avatar-group/u-avatar-group.vue +103 -0
  19. package/components/u-back-top/props.js +54 -0
  20. package/components/u-back-top/u-back-top.vue +129 -0
  21. package/components/u-badge/props.js +72 -0
  22. package/components/u-badge/u-badge.vue +171 -0
  23. package/components/u-button/nvue.scss +46 -0
  24. package/components/u-button/props.js +161 -0
  25. package/components/u-button/u-button.vue +495 -0
  26. package/components/u-button/vue.scss +80 -0
  27. package/components/u-calendar/header.vue +99 -0
  28. package/components/u-calendar/month.vue +579 -0
  29. package/components/u-calendar/props.js +144 -0
  30. package/components/u-calendar/u-calendar.vue +384 -0
  31. package/components/u-calendar/util.js +85 -0
  32. package/components/u-car-keyboard/props.js +14 -0
  33. package/components/u-car-keyboard/u-car-keyboard.vue +311 -0
  34. package/components/u-cell/props.js +110 -0
  35. package/components/u-cell/u-cell.vue +229 -0
  36. package/components/u-cell-group/props.js +14 -0
  37. package/components/u-cell-group/u-cell-group.vue +61 -0
  38. package/components/u-checkbox/props.js +69 -0
  39. package/components/u-checkbox/u-checkbox.vue +344 -0
  40. package/components/u-checkbox-group/props.js +82 -0
  41. package/components/u-checkbox-group/u-checkbox-group.vue +103 -0
  42. package/components/u-circle-progress/props.js +8 -0
  43. package/components/u-circle-progress/u-circle-progress.vue +198 -0
  44. package/components/u-code/props.js +34 -0
  45. package/components/u-code/u-code.vue +129 -0
  46. package/components/u-code-input/props.js +79 -0
  47. package/components/u-code-input/u-code-input.vue +252 -0
  48. package/components/u-col/props.js +29 -0
  49. package/components/u-col/u-col.vue +162 -0
  50. package/components/u-collapse/props.js +19 -0
  51. package/components/u-collapse/u-collapse.vue +90 -0
  52. package/components/u-collapse-item/props.js +59 -0
  53. package/components/u-collapse-item/u-collapse-item.vue +225 -0
  54. package/components/u-column-notice/props.js +55 -0
  55. package/components/u-column-notice/u-column-notice.vue +160 -0
  56. package/components/u-count-down/props.js +24 -0
  57. package/components/u-count-down/u-count-down.vue +163 -0
  58. package/components/u-count-down/utils.js +62 -0
  59. package/components/u-count-to/props.js +59 -0
  60. package/components/u-count-to/u-count-to.vue +184 -0
  61. package/components/u-datetime-picker/props.js +120 -0
  62. package/components/u-datetime-picker/u-datetime-picker.vue +361 -0
  63. package/components/u-divider/props.js +44 -0
  64. package/components/u-divider/u-divider.vue +116 -0
  65. package/components/u-dropdown/props.js +65 -0
  66. package/components/u-dropdown/u-dropdown.vue +127 -0
  67. package/components/u-dropdown-item/props.js +36 -0
  68. package/components/u-dropdown-item/u-dropdown-item.vue +127 -0
  69. package/components/u-empty/props.js +59 -0
  70. package/components/u-empty/u-empty.vue +128 -0
  71. package/components/u-form/props.js +45 -0
  72. package/components/u-form/u-form.vue +214 -0
  73. package/components/u-form-item/props.js +48 -0
  74. package/components/u-form-item/u-form-item.vue +235 -0
  75. package/components/u-gap/props.js +24 -0
  76. package/components/u-gap/u-gap.vue +38 -0
  77. package/components/u-grid/props.js +19 -0
  78. package/components/u-grid/u-grid.vue +97 -0
  79. package/components/u-grid-item/props.js +14 -0
  80. package/components/u-grid-item/u-grid-item.vue +209 -0
  81. package/components/u-icon/icons.js +214 -0
  82. package/components/u-icon/props.js +89 -0
  83. package/components/u-icon/u-icon.vue +237 -0
  84. package/components/u-image/props.js +84 -0
  85. package/components/u-image/u-image.vue +232 -0
  86. package/components/u-index-anchor/props.js +29 -0
  87. package/components/u-index-anchor/u-index-anchor.vue +91 -0
  88. package/components/u-index-item/props.js +5 -0
  89. package/components/u-index-item/u-index-item.vue +87 -0
  90. package/components/u-index-list/props.js +29 -0
  91. package/components/u-index-list/u-index-list.vue +440 -0
  92. package/components/u-input/props.js +187 -0
  93. package/components/u-input/u-input.vue +369 -0
  94. package/components/u-keyboard/props.js +84 -0
  95. package/components/u-keyboard/u-keyboard.vue +164 -0
  96. package/components/u-line/props.js +33 -0
  97. package/components/u-line/u-line.vue +62 -0
  98. package/components/u-line-progress/props.js +28 -0
  99. package/components/u-line-progress/u-line-progress.vue +144 -0
  100. package/components/u-link/props.js +39 -0
  101. package/components/u-link/u-link.vue +83 -0
  102. package/components/u-list/props.js +76 -0
  103. package/components/u-list/u-list.vue +157 -0
  104. package/components/u-list-item/props.js +9 -0
  105. package/components/u-list-item/u-list-item.vue +116 -0
  106. package/components/u-loading-icon/props.js +59 -0
  107. package/components/u-loading-icon/u-loading-icon.vue +343 -0
  108. package/components/u-loading-page/props.js +49 -0
  109. package/components/u-loading-page/u-loading-page.vue +115 -0
  110. package/components/u-loadmore/props.js +94 -0
  111. package/components/u-loadmore/u-loadmore.vue +150 -0
  112. package/components/u-modal/props.js +89 -0
  113. package/components/u-modal/u-modal.vue +228 -0
  114. package/components/u-navbar/props.js +84 -0
  115. package/components/u-navbar/u-navbar.vue +186 -0
  116. package/components/u-no-network/props.js +19 -0
  117. package/components/u-no-network/u-no-network.vue +220 -0
  118. package/components/u-notice-bar/props.js +70 -0
  119. package/components/u-notice-bar/u-notice-bar.vue +101 -0
  120. package/components/u-notify/props.js +49 -0
  121. package/components/u-notify/u-notify.vue +211 -0
  122. package/components/u-number-box/props.js +109 -0
  123. package/components/u-number-box/u-number-box.vue +416 -0
  124. package/components/u-number-keyboard/props.js +19 -0
  125. package/components/u-number-keyboard/u-number-keyboard.vue +196 -0
  126. package/components/u-overlay/props.js +24 -0
  127. package/components/u-overlay/u-overlay.vue +68 -0
  128. package/components/u-parse/node/node.vue +499 -0
  129. package/components/u-parse/parser.js +1075 -0
  130. package/components/u-parse/props.js +45 -0
  131. package/components/u-parse/u-parse.vue +366 -0
  132. package/components/u-picker/props.js +79 -0
  133. package/components/u-picker/u-picker.vue +286 -0
  134. package/components/u-picker-column/props.js +5 -0
  135. package/components/u-picker-column/u-picker-column.vue +27 -0
  136. package/components/u-popup/props.js +79 -0
  137. package/components/u-popup/u-popup.vue +304 -0
  138. package/components/u-radio/props.js +64 -0
  139. package/components/u-radio/u-radio.vue +339 -0
  140. package/components/u-radio-group/props.js +85 -0
  141. package/components/u-radio-group/u-radio-group.vue +108 -0
  142. package/components/u-rate/props.js +69 -0
  143. package/components/u-rate/u-rate.vue +306 -0
  144. package/components/u-read-more/props.js +61 -0
  145. package/components/u-read-more/u-read-more.vue +157 -0
  146. package/components/u-row/props.js +19 -0
  147. package/components/u-row/u-row.vue +93 -0
  148. package/components/u-row-notice/props.js +39 -0
  149. package/components/u-row-notice/u-row-notice.vue +330 -0
  150. package/components/u-safe-bottom/props.js +5 -0
  151. package/components/u-safe-bottom/u-safe-bottom.vue +56 -0
  152. package/components/u-scroll-list/nvue.js +28 -0
  153. package/components/u-scroll-list/other.js +0 -0
  154. package/components/u-scroll-list/props.js +34 -0
  155. package/components/u-scroll-list/scrollWxs.wxs +50 -0
  156. package/components/u-scroll-list/u-scroll-list.vue +224 -0
  157. package/components/u-search/props.js +118 -0
  158. package/components/u-search/u-search.vue +303 -0
  159. package/components/u-skeleton/props.js +59 -0
  160. package/components/u-skeleton/u-skeleton.vue +244 -0
  161. package/components/u-slider/mpother.js +113 -0
  162. package/components/u-slider/mpwxs.js +42 -0
  163. package/components/u-slider/mpwxs.wxs +121 -0
  164. package/components/u-slider/nvue - /345/211/257/346/234/254.js" +180 -0
  165. package/components/u-slider/nvue.js +193 -0
  166. package/components/u-slider/props.js +54 -0
  167. package/components/u-slider/u-slider.vue +55 -0
  168. package/components/u-status-bar/props.js +8 -0
  169. package/components/u-status-bar/u-status-bar.vue +46 -0
  170. package/components/u-steps/props.js +39 -0
  171. package/components/u-steps/u-steps.vue +80 -0
  172. package/components/u-steps-item/props.js +24 -0
  173. package/components/u-steps-item/u-steps-item.vue +316 -0
  174. package/components/u-sticky/props.js +40 -0
  175. package/components/u-sticky/u-sticky.vue +212 -0
  176. package/components/u-subsection/props.js +49 -0
  177. package/components/u-subsection/u-subsection.vue +299 -0
  178. package/components/u-swipe-action/props.js +9 -0
  179. package/components/u-swipe-action/u-swipe-action.vue +67 -0
  180. package/components/u-swipe-action-item/index - backup.wxs +256 -0
  181. package/components/u-swipe-action-item/index.wxs +225 -0
  182. package/components/u-swipe-action-item/nvue - backup.js +270 -0
  183. package/components/u-swipe-action-item/nvue.js +174 -0
  184. package/components/u-swipe-action-item/props.js +41 -0
  185. package/components/u-swipe-action-item/u-swipe-action-item.vue +190 -0
  186. package/components/u-swipe-action-item/wxs.js +15 -0
  187. package/components/u-swiper/props.js +125 -0
  188. package/components/u-swiper/u-swiper.vue +255 -0
  189. package/components/u-swiper-indicator/props.js +29 -0
  190. package/components/u-swiper-indicator/u-swiper-indicator.vue +110 -0
  191. package/components/u-switch/props.js +54 -0
  192. package/components/u-switch/u-switch.vue +177 -0
  193. package/components/u-tabbar/props.js +44 -0
  194. package/components/u-tabbar/u-tabbar.vue +141 -0
  195. package/components/u-tabbar-item/props.js +35 -0
  196. package/components/u-tabbar-item/u-tabbar-item.vue +142 -0
  197. package/components/u-table/props.js +5 -0
  198. package/components/u-table/u-table.vue +29 -0
  199. package/components/u-tabs/props.js +64 -0
  200. package/components/u-tabs/u-tabs.vue +363 -0
  201. package/components/u-tabs-item/props.js +5 -0
  202. package/components/u-tabs-item/u-tabs-item.vue +29 -0
  203. package/components/u-tag/props.js +84 -0
  204. package/components/u-tag/u-tag.vue +358 -0
  205. package/components/u-td/props.js +5 -0
  206. package/components/u-td/u-td.vue +31 -0
  207. package/components/u-text/props.js +110 -0
  208. package/components/u-text/u-text.vue +223 -0
  209. package/components/u-text/value.js +85 -0
  210. package/components/u-textarea/props.js +119 -0
  211. package/components/u-textarea/u-textarea.vue +239 -0
  212. package/components/u-toast/u-toast.vue +291 -0
  213. package/components/u-toolbar/props.js +34 -0
  214. package/components/u-toolbar/u-toolbar.vue +102 -0
  215. package/components/u-tooltip/clipboard.min.js +58 -0
  216. package/components/u-tooltip/props.js +59 -0
  217. package/components/u-tooltip/u-tooltip.vue +366 -0
  218. package/components/u-tr/props.js +5 -0
  219. package/components/u-tr/u-tr.vue +31 -0
  220. package/components/u-transition/nvue.ani-map.js +68 -0
  221. package/components/u-transition/props.js +24 -0
  222. package/components/u-transition/transition.js +157 -0
  223. package/components/u-transition/u-transition.vue +92 -0
  224. package/components/u-transition/vue.ani-style.scss +113 -0
  225. package/components/u-upload/mixin.js +21 -0
  226. package/components/u-upload/props.js +124 -0
  227. package/components/u-upload/u-upload.vue +566 -0
  228. package/components/u-upload/utils.js +151 -0
  229. package/components/uview-ui/uview-ui.vue +15 -0
  230. package/index.js +79 -0
  231. package/index.scss +23 -0
  232. package/libs/config/color.js +17 -0
  233. package/libs/config/config.js +34 -0
  234. package/libs/config/props/actionSheet.js +25 -0
  235. package/libs/config/props/album.js +25 -0
  236. package/libs/config/props/alert.js +22 -0
  237. package/libs/config/props/avatar.js +28 -0
  238. package/libs/config/props/avatarGroup.js +23 -0
  239. package/libs/config/props/backtop.js +27 -0
  240. package/libs/config/props/badge.js +27 -0
  241. package/libs/config/props/button.js +42 -0
  242. package/libs/config/props/calendar.js +42 -0
  243. package/libs/config/props/carKeyboard.js +15 -0
  244. package/libs/config/props/cell.js +35 -0
  245. package/libs/config/props/cellGroup.js +17 -0
  246. package/libs/config/props/checkbox.js +27 -0
  247. package/libs/config/props/checkboxGroup.js +29 -0
  248. package/libs/config/props/circleProgress.js +15 -0
  249. package/libs/config/props/code.js +21 -0
  250. package/libs/config/props/codeInput.js +29 -0
  251. package/libs/config/props/col.js +19 -0
  252. package/libs/config/props/collapse.js +17 -0
  253. package/libs/config/props/collapseItem.js +25 -0
  254. package/libs/config/props/columnNotice.js +24 -0
  255. package/libs/config/props/countDown.js +18 -0
  256. package/libs/config/props/countTo.js +25 -0
  257. package/libs/config/props/datetimePicker.js +37 -0
  258. package/libs/config/props/divider.js +23 -0
  259. package/libs/config/props/empty.js +26 -0
  260. package/libs/config/props/form.js +22 -0
  261. package/libs/config/props/formItem.js +23 -0
  262. package/libs/config/props/gap.js +19 -0
  263. package/libs/config/props/grid.js +17 -0
  264. package/libs/config/props/gridItem.js +16 -0
  265. package/libs/config/props/icon.js +36 -0
  266. package/libs/config/props/image.js +30 -0
  267. package/libs/config/props/indexAnchor.js +19 -0
  268. package/libs/config/props/indexList.js +19 -0
  269. package/libs/config/props/input.js +48 -0
  270. package/libs/config/props/keyboard.js +30 -0
  271. package/libs/config/props/line.js +20 -0
  272. package/libs/config/props/lineProgress.js +19 -0
  273. package/libs/config/props/link.js +26 -0
  274. package/libs/config/props/list.js +28 -0
  275. package/libs/config/props/listItem.js +15 -0
  276. package/libs/config/props/loadingIcon.js +30 -0
  277. package/libs/config/props/loadingPage.js +23 -0
  278. package/libs/config/props/loadmore.js +32 -0
  279. package/libs/config/props/modal.js +31 -0
  280. package/libs/config/props/navbar.js +32 -0
  281. package/libs/config/props/noNetwork.js +18 -0
  282. package/libs/config/props/noticeBar.js +27 -0
  283. package/libs/config/props/notify.js +22 -0
  284. package/libs/config/props/numberBox.js +35 -0
  285. package/libs/config/props/numberKeyboard.js +17 -0
  286. package/libs/config/props/overlay.js +18 -0
  287. package/libs/config/props/parse.js +22 -0
  288. package/libs/config/props/picker.js +29 -0
  289. package/libs/config/props/popup.js +29 -0
  290. package/libs/config/props/radio.js +27 -0
  291. package/libs/config/props/radioGroup.js +30 -0
  292. package/libs/config/props/rate.js +26 -0
  293. package/libs/config/props/readMore.js +22 -0
  294. package/libs/config/props/row.js +17 -0
  295. package/libs/config/props/rowNotice.js +21 -0
  296. package/libs/config/props/scrollList.js +20 -0
  297. package/libs/config/props/search.js +37 -0
  298. package/libs/config/props/section.js +24 -0
  299. package/libs/config/props/skeleton.js +25 -0
  300. package/libs/config/props/slider.js +25 -0
  301. package/libs/config/props/statusBar.js +15 -0
  302. package/libs/config/props/steps.js +21 -0
  303. package/libs/config/props/stepsItem.js +18 -0
  304. package/libs/config/props/sticky.js +20 -0
  305. package/libs/config/props/subsection.js +23 -0
  306. package/libs/config/props/swipeAction.js +15 -0
  307. package/libs/config/props/swipeActionItem.js +21 -0
  308. package/libs/config/props/swiper.js +39 -0
  309. package/libs/config/props/swipterIndicator.js +19 -0
  310. package/libs/config/props/switch.js +24 -0
  311. package/libs/config/props/tabbar.js +22 -0
  312. package/libs/config/props/tabbarItem.js +20 -0
  313. package/libs/config/props/tabs.js +32 -0
  314. package/libs/config/props/tag.js +29 -0
  315. package/libs/config/props/text.js +38 -0
  316. package/libs/config/props/textarea.js +36 -0
  317. package/libs/config/props/toast.js +30 -0
  318. package/libs/config/props/toolbar.js +21 -0
  319. package/libs/config/props/tooltip.js +25 -0
  320. package/libs/config/props/transition.js +18 -0
  321. package/libs/config/props/upload.js +36 -0
  322. package/libs/config/props.js +190 -0
  323. package/libs/config/zIndex.js +20 -0
  324. package/libs/css/color.scss +155 -0
  325. package/libs/css/common.scss +97 -0
  326. package/libs/css/components.scss +15 -0
  327. package/libs/css/flex.scss +257 -0
  328. package/libs/css/h5.scss +0 -0
  329. package/libs/css/mixin.scss +8 -0
  330. package/libs/css/mp.scss +0 -0
  331. package/libs/css/nvue.scss +0 -0
  332. package/libs/css/vue.scss +27 -0
  333. package/libs/function/colorGradient.js +134 -0
  334. package/libs/function/debounce.js +29 -0
  335. package/libs/function/digit.js +167 -0
  336. package/libs/function/index.js +731 -0
  337. package/libs/function/platform.js +75 -0
  338. package/libs/function/test.js +288 -0
  339. package/libs/function/throttle.js +30 -0
  340. package/libs/luch-request/adapters/index.js +97 -0
  341. package/libs/luch-request/core/InterceptorManager.js +50 -0
  342. package/libs/luch-request/core/Request.js +198 -0
  343. package/libs/luch-request/core/buildFullPath.js +20 -0
  344. package/libs/luch-request/core/defaults.js +29 -0
  345. package/libs/luch-request/core/dispatchRequest.js +3 -0
  346. package/libs/luch-request/core/mergeConfig.js +103 -0
  347. package/libs/luch-request/core/settle.js +16 -0
  348. package/libs/luch-request/helpers/buildURL.js +69 -0
  349. package/libs/luch-request/helpers/combineURLs.js +14 -0
  350. package/libs/luch-request/helpers/isAbsoluteURL.js +14 -0
  351. package/libs/luch-request/index.d.ts +116 -0
  352. package/libs/luch-request/index.js +3 -0
  353. package/libs/luch-request/utils/clone.js +264 -0
  354. package/libs/luch-request/utils.js +131 -0
  355. package/libs/mixin/button.js +13 -0
  356. package/libs/mixin/mixin.js +160 -0
  357. package/libs/mixin/mpMixin.js +8 -0
  358. package/libs/mixin/mpShare.js +13 -0
  359. package/libs/mixin/openType.js +25 -0
  360. package/libs/mixin/style.js +228 -0
  361. package/libs/mixin/touch.js +59 -0
  362. package/libs/util/async-validator.js +1343 -0
  363. package/libs/util/calendar.js +546 -0
  364. package/libs/util/dayjs.js +308 -0
  365. package/libs/util/emitter.js +51 -0
  366. package/libs/util/route.js +124 -0
  367. package/package.json +83 -0
  368. package/theme.scss +44 -0
@@ -0,0 +1,115 @@
1
+ <template>
2
+ <uvInput
3
+ :value="value"
4
+ :type="type"
5
+ :fixed="fixed"
6
+ :disabled="disabled"
7
+ :disabledColor="disabledColor"
8
+ :clearable="clearable"
9
+ :password="password"
10
+ :maxlength="maxlength"
11
+ :placeholder="placeholder"
12
+ :placeholderClass="placeholderClass"
13
+ :placeholderStyle="placeholderStyle"
14
+ :showWordLimit="showWordLimit"
15
+ :confirmType="confirmType"
16
+ :confirmHold="confirmHold"
17
+ :holdKeyboard="holdKeyboard"
18
+ :focus="focus"
19
+ :autoBlur="autoBlur"
20
+ :disableDefaultPadding="disableDefaultPadding"
21
+ :cursor="cursor"
22
+ :cursorSpacing="cursorSpacing"
23
+ :selectionStart="selectionStart"
24
+ :selectionEnd="selectionEnd"
25
+ :adjustPosition="adjustPosition"
26
+ :inputAlign="inputAlign"
27
+ :fontSize="fontSize"
28
+ :color="color"
29
+ :prefixIcon="prefixIcon"
30
+ :suffixIcon="suffixIcon"
31
+ :suffixIconStyle="suffixIconStyle"
32
+ :prefixIconStyle="prefixIconStyle"
33
+ :border="border"
34
+ :readonly="readonly"
35
+ :shape="shape"
36
+ :customStyle="customStyle"
37
+ :formatter="formatter"
38
+ :ignoreCompositionEvent="ignoreCompositionEvent"
39
+ @focus="e => $emit('focus', e)"
40
+ @blur="e => $emit('blur', e)"
41
+ @keyboardheightchange="e => $emit('keyboardheightchange', e)"
42
+ @change="e => $emit('change', e)"
43
+ @input="e => $emit('input', e)"
44
+ @confirm="e => $emit('confirm', e)"
45
+ @clear="$emit('clear')"
46
+ @click="$emit('click')"
47
+ >
48
+ <!-- #ifdef MP -->
49
+ <slot name="prefix"></slot>
50
+ <slot name="suffix"></slot>
51
+ <!-- #endif -->
52
+ <!-- #ifndef MP -->
53
+ <slot name="prefix" slot="prefix"></slot>
54
+ <slot name="suffix" slot="suffix"></slot>
55
+ <!-- #endif -->
56
+ </uvInput>
57
+ </template>
58
+
59
+ <script>
60
+ /**
61
+ * 此组件存在的理由是,在nvue下,u-input被uni-app官方占用了,u-input在nvue中相当于input组件
62
+ * 所以在nvue下,取名为u--input,内部其实还是u-input.vue,只不过做一层中转
63
+ */
64
+ import uvInput from '../u-input/u-input.vue';
65
+ import props from '../u-input/props.js'
66
+ /**
67
+ * Input 输入框
68
+ * @description 此组件为一个输入框,默认没有边框和样式,是专门为配合表单组件u-form而设计的,利用它可以快速实现表单验证,输入内容,下拉选择等功能。
69
+ * @tutorial https://uviewui.com/components/input.html
70
+ * @property {String | Number} value 输入的值
71
+ * @property {String} type 输入框类型,见上方说明 ( 默认 'text' )
72
+ * @property {Boolean} fixed 如果 textarea 是在一个 position:fixed 的区域,需要显示指定属性 fixed 为 true,兼容性:微信小程序、百度小程序、字节跳动小程序、QQ小程序 ( 默认 false )
73
+ * @property {Boolean} disabled 是否禁用输入框 ( 默认 false )
74
+ * @property {String} disabledColor 禁用状态时的背景色( 默认 '#f5f7fa' )
75
+ * @property {Boolean} clearable 是否显示清除控件 ( 默认 false )
76
+ * @property {Boolean} password 是否密码类型 ( 默认 false )
77
+ * @property {String | Number} maxlength 最大输入长度,设置为 -1 的时候不限制最大长度 ( 默认 -1 )
78
+ * @property {String} placeholder 输入框为空时的占位符
79
+ * @property {String} placeholderClass 指定placeholder的样式类,注意页面或组件的style中写了scoped时,需要在类名前写/deep/ ( 默认 'input-placeholder' )
80
+ * @property {String | Object} placeholderStyle 指定placeholder的样式,字符串/对象形式,如"color: red;"
81
+ * @property {Boolean} showWordLimit 是否显示输入字数统计,只在 type ="text"或type ="textarea"时有效 ( 默认 false )
82
+ * @property {String} confirmType 设置右下角按钮的文字,兼容性详见uni-app文档 ( 默认 'done' )
83
+ * @property {Boolean} confirmHold 点击键盘右下角按钮时是否保持键盘不收起,H5无效 ( 默认 false )
84
+ * @property {Boolean} holdKeyboard focus时,点击页面的时候不收起键盘,微信小程序有效 ( 默认 false )
85
+ * @property {Boolean} focus 自动获取焦点,在 H5 平台能否聚焦以及软键盘是否跟随弹出,取决于当前浏览器本身的实现。nvue 页面不支持,需使用组件的 focus()、blur() 方法控制焦点 ( 默认 false )
86
+ * @property {Boolean} autoBlur 键盘收起时,是否自动失去焦点,目前仅App3.0.0+有效 ( 默认 false )
87
+ * @property {Boolean} disableDefaultPadding 是否去掉 iOS 下的默认内边距,仅微信小程序,且type=textarea时有效 ( 默认 false )
88
+ * @property {String | Number} cursor 指定focus时光标的位置( 默认 -1 )
89
+ * @property {String | Number} cursorSpacing 输入框聚焦时底部与键盘的距离 ( 默认 30 )
90
+ * @property {String | Number} selectionStart 光标起始位置,自动聚集时有效,需与selection-end搭配使用 ( 默认 -1 )
91
+ * @property {String | Number} selectionEnd 光标结束位置,自动聚集时有效,需与selection-start搭配使用 ( 默认 -1 )
92
+ * @property {Boolean} adjustPosition 键盘弹起时,是否自动上推页面 ( 默认 true )
93
+ * @property {String} inputAlign 输入框内容对齐方式( 默认 'left' )
94
+ * @property {String | Number} fontSize 输入框字体的大小 ( 默认 '15px' )
95
+ * @property {String} color 输入框字体颜色 ( 默认 '#303133' )
96
+ * @property {Function} formatter 内容式化函数
97
+ * @property {String} prefixIcon 输入框前置图标
98
+ * @property {String | Object} prefixIconStyle 前置图标样式,对象或字符串
99
+ * @property {String} suffixIcon 输入框后置图标
100
+ * @property {String | Object} suffixIconStyle 后置图标样式,对象或字符串
101
+ * @property {String} border 边框类型,surround-四周边框,bottom-底部边框,none-无边框 ( 默认 'surround' )
102
+ * @property {Boolean} readonly 是否只读,与disabled不同之处在于disabled会置灰组件,而readonly则不会 ( 默认 false )
103
+ * @property {String} shape 输入框形状,circle-圆形,square-方形 ( 默认 'square' )
104
+ * @property {Object} customStyle 定义需要用到的外部样式
105
+ * @property {Boolean} ignoreCompositionEvent 是否忽略组件内对文本合成系统事件的处理。
106
+ * @example <u--input v-model="value" :password="true" suffix-icon="lock-fill" />
107
+ */
108
+ export default {
109
+ name: 'u--input',
110
+ mixins: [uni.$u.mpMixin, props, uni.$u.mixin],
111
+ components: {
112
+ uvInput
113
+ },
114
+ }
115
+ </script>
@@ -0,0 +1,72 @@
1
+ <template>
2
+ <uvText
3
+ :type="type"
4
+ :show="show"
5
+ :text="text"
6
+ :prefixIcon="prefixIcon"
7
+ :suffixIcon="suffixIcon"
8
+ :mode="mode"
9
+ :href="href"
10
+ :format="format"
11
+ :call="call"
12
+ :openType="openType"
13
+ :bold="bold"
14
+ :block="block"
15
+ :lines="lines"
16
+ :color="color"
17
+ :decoration="decoration"
18
+ :size="size"
19
+ :iconStyle="iconStyle"
20
+ :margin="margin"
21
+ :lineHeight="lineHeight"
22
+ :align="align"
23
+ :wordWrap="wordWrap"
24
+ :customStyle="customStyle"
25
+ @click="$emit('click')"
26
+ ></uvText>
27
+ </template>
28
+
29
+ <script>
30
+ /**
31
+ * 此组件存在的理由是,在nvue下,u-text被uni-app官方占用了,u-text在nvue中相当于input组件
32
+ * 所以在nvue下,取名为u--input,内部其实还是u-text.vue,只不过做一层中转
33
+ * 不使用v-bind="$attrs",而是分开独立写传参,是因为微信小程序不支持此写法
34
+ */
35
+ import uvText from "../u-text/u-text.vue";
36
+ import props from "../u-text/props.js";
37
+ /**
38
+ * Text 文本
39
+ * @description 此组件集成了文本类在项目中的常用功能,包括状态,拨打电话,格式化日期,*替换,超链接...等功能。 您大可不必在使用特殊文本时自己定义,text组件几乎涵盖您能使用的大部分场景。
40
+ * @tutorial https://www.uviewui.com/components/loading.html
41
+ * @property {String} type 主题颜色
42
+ * @property {Boolean} show 是否显示(默认 true )
43
+ * @property {String | Number} text 显示的值
44
+ * @property {String} prefixIcon 前置图标
45
+ * @property {String} suffixIcon 后置图标
46
+ * @property {String} mode 文本处理的匹配模式 text-普通文本,price-价格,phone-手机号,name-姓名,date-日期,link-超链接
47
+ * @property {String} href mode=link下,配置的链接
48
+ * @property {String | Function} format 格式化规则
49
+ * @property {Boolean} call mode=phone时,点击文本是否拨打电话(默认 false )
50
+ * @property {String} openType 小程序的打开方式
51
+ * @property {Boolean} bold 是否粗体,默认normal(默认 false )
52
+ * @property {Boolean} block 是否块状(默认 false )
53
+ * @property {String | Number} lines 文本显示的行数,如果设置,超出此行数,将会显示省略号
54
+ * @property {String} color 文本颜色(默认 '#303133' )
55
+ * @property {String | Number} size 字体大小(默认 15 )
56
+ * @property {Object | String} iconStyle 图标的样式 (默认 {fontSize: '15px'} )
57
+ * @property {String} decoration 文字装饰,下划线,中划线等,可选值 none|underline|line-through(默认 'none' )
58
+ * @property {Object | String | Number} margin 外边距,对象、字符串,数值形式均可(默认 0 )
59
+ * @property {String | Number} lineHeight 文本行高
60
+ * @property {String} align 文本对齐方式,可选值left|center|right(默认 'left' )
61
+ * @property {String} wordWrap 文字换行,可选值break-word|normal|anywhere(默认 'normal' )
62
+ * @event {Function} click 点击触发事件
63
+ * @example <u--text text="我用十年青春,赴你最后之约"></u--text>
64
+ */
65
+ export default {
66
+ name: "u--text",
67
+ mixins: [uni.$u.mpMixin, props, uni.$u.mixin],
68
+ components: {
69
+ uvText,
70
+ },
71
+ };
72
+ </script>
@@ -0,0 +1,85 @@
1
+ <template>
2
+ <uvTextarea
3
+ :value="value"
4
+ :placeholder="placeholder"
5
+ :height="height"
6
+ :confirmType="confirmType"
7
+ :disabled="disabled"
8
+ :count="count"
9
+ :focus="focus"
10
+ :autoHeight="autoHeight"
11
+ :fixed="fixed"
12
+ :cursorSpacing="cursorSpacing"
13
+ :cursor="cursor"
14
+ :showConfirmBar="showConfirmBar"
15
+ :selectionStart="selectionStart"
16
+ :selectionEnd="selectionEnd"
17
+ :adjustPosition="adjustPosition"
18
+ :disableDefaultPadding="disableDefaultPadding"
19
+ :holdKeyboard="holdKeyboard"
20
+ :maxlength="maxlength"
21
+ :border="border"
22
+ :customStyle="customStyle"
23
+ :formatter="formatter"
24
+ :ignoreCompositionEvent="ignoreCompositionEvent"
25
+ @focus="e => $emit('focus', e)"
26
+ @blur="e => $emit('blur', e)"
27
+ @linechange="e => $emit('linechange', e)"
28
+ @confirm="e => $emit('confirm', e)"
29
+ @input="e => $emit('input', e)"
30
+ @keyboardheightchange="e => $emit('keyboardheightchange', e)"
31
+ ></uvTextarea>
32
+ </template>
33
+
34
+ <script>
35
+ /**
36
+ * 此组件存在的理由是,在nvue下,u--textarea被uni-app官方占用了,u-textarea在nvue中相当于textarea组件
37
+ * 所以在nvue下,取名为u--textarea,内部其实还是u-textarea.vue,只不过做一层中转
38
+ */
39
+ import uvTextarea from '../u-textarea/u-textarea.vue';
40
+ import props from '../u-textarea/props.js'
41
+ /**
42
+ * Textarea 文本域
43
+ * @description 文本域此组件满足了可能出现的表单信息补充,编辑等实际逻辑的功能,内置了字数校验等
44
+ * @tutorial https://www.uviewui.com/components/textarea.html
45
+ *
46
+ * @property {String | Number} value 输入框的内容
47
+ * @property {String | Number} placeholder 输入框为空时占位符
48
+ * @property {String} placeholderClass 指定placeholder的样式类,注意页面或组件的style中写了scoped时,需要在类名前写/deep/ ( 默认 'input-placeholder' )
49
+ * @property {String | Object} placeholderStyle 指定placeholder的样式,字符串/对象形式,如"color: red;"
50
+ * @property {String | Number} height 输入框高度(默认 70 )
51
+ * @property {String} confirmType 设置键盘右下角按钮的文字,仅微信小程序,App-vue和H5有效(默认 'done' )
52
+ * @property {Boolean} disabled 是否禁用(默认 false )
53
+ * @property {Boolean} count 是否显示统计字数(默认 false )
54
+ * @property {Boolean} focus 是否自动获取焦点,nvue不支持,H5取决于浏览器的实现(默认 false )
55
+ * @property {Boolean | Function} autoHeight 是否自动增加高度(默认 false )
56
+ * @property {Boolean} fixed 如果textarea是在一个position:fixed的区域,需要显示指定属性fixed为true(默认 false )
57
+ * @property {Number} cursorSpacing 指定光标与键盘的距离(默认 0 )
58
+ * @property {String | Number} cursor 指定focus时的光标位置
59
+ * @property {Function} formatter 内容式化函数
60
+ * @property {Boolean} showConfirmBar 是否显示键盘上方带有”完成“按钮那一栏,(默认 true )
61
+ * @property {Number} selectionStart 光标起始位置,自动聚焦时有效,需与selection-end搭配使用,(默认 -1 )
62
+ * @property {Number | Number} selectionEnd 光标结束位置,自动聚焦时有效,需与selection-start搭配使用(默认 -1 )
63
+ * @property {Boolean} adjustPosition 键盘弹起时,是否自动上推页面(默认 true )
64
+ * @property {Boolean | Number} disableDefaultPadding 是否去掉 iOS 下的默认内边距,只微信小程序有效(默认 false )
65
+ * @property {Boolean} holdKeyboard focus时,点击页面的时候不收起键盘,只微信小程序有效(默认 false )
66
+ * @property {String | Number} maxlength 最大输入长度,设置为 -1 的时候不限制最大长度(默认 140 )
67
+ * @property {String} border 边框类型,surround-四周边框,none-无边框,bottom-底部边框(默认 'surround' )
68
+ * @property {Boolean} ignoreCompositionEvent 是否忽略组件内对文本合成系统事件的处理
69
+ *
70
+ * @event {Function(e)} focus 输入框聚焦时触发,event.detail = { value, height },height 为键盘高度
71
+ * @event {Function(e)} blur 输入框失去焦点时触发,event.detail = {value, cursor}
72
+ * @event {Function(e)} linechange 输入框行数变化时调用,event.detail = {height: 0, heightRpx: 0, lineCount: 0}
73
+ * @event {Function(e)} input 当键盘输入时,触发 input 事件
74
+ * @event {Function(e)} confirm 点击完成时, 触发 confirm 事件
75
+ * @event {Function(e)} keyboardheightchange 键盘高度发生变化的时候触发此事件
76
+ * @example <u--textarea v-model="value1" placeholder="请输入内容" ></u--textarea>
77
+ */
78
+ export default {
79
+ name: 'u--textarea',
80
+ mixins: [uni.$u.mpMixin, props, uni.$u.mixin],
81
+ components: {
82
+ uvTextarea
83
+ },
84
+ }
85
+ </script>
@@ -0,0 +1,54 @@
1
+ export default {
2
+ props: {
3
+ // 操作菜单是否展示 (默认false)
4
+ show: {
5
+ type: Boolean,
6
+ default: uni.$u.props.actionSheet.show
7
+ },
8
+ // 标题
9
+ title: {
10
+ type: String,
11
+ default: uni.$u.props.actionSheet.title
12
+ },
13
+ // 选项上方的描述信息
14
+ description: {
15
+ type: String,
16
+ default: uni.$u.props.actionSheet.description
17
+ },
18
+ // 数据
19
+ actions: {
20
+ type: Array,
21
+ default: uni.$u.props.actionSheet.actions
22
+ },
23
+ // 取消按钮的文字,不为空时显示按钮
24
+ cancelText: {
25
+ type: String,
26
+ default: uni.$u.props.actionSheet.cancelText
27
+ },
28
+ // 点击某个菜单项时是否关闭弹窗
29
+ closeOnClickAction: {
30
+ type: Boolean,
31
+ default: uni.$u.props.actionSheet.closeOnClickAction
32
+ },
33
+ // 处理底部安全区(默认true)
34
+ safeAreaInsetBottom: {
35
+ type: Boolean,
36
+ default: uni.$u.props.actionSheet.safeAreaInsetBottom
37
+ },
38
+ // 小程序的打开方式
39
+ openType: {
40
+ type: String,
41
+ default: uni.$u.props.actionSheet.openType
42
+ },
43
+ // 点击遮罩是否允许关闭 (默认true)
44
+ closeOnClickOverlay: {
45
+ type: Boolean,
46
+ default: uni.$u.props.actionSheet.closeOnClickOverlay
47
+ },
48
+ // 圆角值
49
+ round: {
50
+ type: [String, Number],
51
+ default: uni.$u.props.actionSheet.round
52
+ }
53
+ }
54
+ }
@@ -0,0 +1,278 @@
1
+
2
+ <template>
3
+ <u-popup
4
+ :show="show"
5
+ mode="bottom"
6
+ @close="closeHandler"
7
+ :safeAreaInsetBottom="safeAreaInsetBottom"
8
+ :round="round"
9
+ >
10
+ <view class="u-action-sheet">
11
+ <view
12
+ class="u-action-sheet__header"
13
+ v-if="title"
14
+ >
15
+ <text class="u-action-sheet__header__title u-line-1">{{title}}</text>
16
+ <view
17
+ class="u-action-sheet__header__icon-wrap"
18
+ @tap.stop="cancel"
19
+ >
20
+ <u-icon
21
+ name="close"
22
+ size="17"
23
+ color="#c8c9cc"
24
+ bold
25
+ ></u-icon>
26
+ </view>
27
+ </view>
28
+ <text
29
+ class="u-action-sheet__description"
30
+ :style="[{
31
+ marginTop: `${title && description ? 0 : '18px'}`
32
+ }]"
33
+ v-if="description"
34
+ >{{description}}</text>
35
+ <slot>
36
+ <u-line v-if="description"></u-line>
37
+ <view class="u-action-sheet__item-wrap">
38
+ <template v-for="(item, index) in actions">
39
+ <!-- #ifdef MP -->
40
+ <button
41
+ :key="index"
42
+ class="u-reset-button"
43
+ :openType="item.openType"
44
+ @getuserinfo="onGetUserInfo"
45
+ @contact="onContact"
46
+ @getphonenumber="onGetPhoneNumber"
47
+ @error="onError"
48
+ @launchapp="onLaunchApp"
49
+ @opensetting="onOpenSetting"
50
+ :lang="lang"
51
+ :session-from="sessionFrom"
52
+ :send-message-title="sendMessageTitle"
53
+ :send-message-path="sendMessagePath"
54
+ :send-message-img="sendMessageImg"
55
+ :show-message-card="showMessageCard"
56
+ :app-parameter="appParameter"
57
+ @tap="selectHandler(index)"
58
+ :hover-class="!item.disabled && !item.loading ? 'u-action-sheet--hover' : ''"
59
+ >
60
+ <!-- #endif -->
61
+ <view
62
+ class="u-action-sheet__item-wrap__item"
63
+ @tap.stop="selectHandler(index)"
64
+ :hover-class="!item.disabled && !item.loading ? 'u-action-sheet--hover' : ''"
65
+ :hover-stay-time="150"
66
+ >
67
+ <template v-if="!item.loading">
68
+ <text
69
+ class="u-action-sheet__item-wrap__item__name"
70
+ :style="[itemStyle(index)]"
71
+ >{{ item.name }}</text>
72
+ <text
73
+ v-if="item.subname"
74
+ class="u-action-sheet__item-wrap__item__subname"
75
+ >{{ item.subname }}</text>
76
+ </template>
77
+ <u-loading-icon
78
+ v-else
79
+ custom-class="van-action-sheet__loading"
80
+ size="18"
81
+ mode="circle"
82
+ />
83
+ </view>
84
+ <!-- #ifdef MP -->
85
+ </button>
86
+ <!-- #endif -->
87
+ <u-line v-if="index !== actions.length - 1"></u-line>
88
+ </template>
89
+ </view>
90
+ </slot>
91
+ <u-gap
92
+ bgColor="#eaeaec"
93
+ height="6"
94
+ v-if="cancelText"
95
+ ></u-gap>
96
+ <view hover-class="u-action-sheet--hover">
97
+ <text
98
+ @touchmove.stop.prevent
99
+ :hover-stay-time="150"
100
+ v-if="cancelText"
101
+ class="u-action-sheet__cancel-text"
102
+ @tap="cancel"
103
+ >{{cancelText}}</text>
104
+ </view>
105
+ </view>
106
+ </u-popup>
107
+ </template>
108
+
109
+ <script>
110
+ import openType from '../../libs/mixin/openType'
111
+ import button from '../../libs/mixin/button'
112
+ import props from './props.js';
113
+ /**
114
+ * ActionSheet 操作菜单
115
+ * @description 本组件用于从底部弹出一个操作菜单,供用户选择并返回结果。本组件功能类似于uni的uni.showActionSheetAPI,配置更加灵活,所有平台都表现一致。
116
+ * @tutorial https://www.uviewui.com/components/actionSheet.html
117
+ *
118
+ * @property {Boolean} show 操作菜单是否展示 (默认 false )
119
+ * @property {String} title 操作菜单标题
120
+ * @property {String} description 选项上方的描述信息
121
+ * @property {Array<Object>} actions 按钮的文字数组,见官方文档示例
122
+ * @property {String} cancelText 取消按钮的提示文字,不为空时显示按钮
123
+ * @property {Boolean} closeOnClickAction 点击某个菜单项时是否关闭弹窗 (默认 true )
124
+ * @property {Boolean} safeAreaInsetBottom 处理底部安全区 (默认 true )
125
+ * @property {String} openType 小程序的打开方式 (contact | launchApp | getUserInfo | openSetting |getPhoneNumber |error )
126
+ * @property {Boolean} closeOnClickOverlay 点击遮罩是否允许关闭 (默认 true )
127
+ * @property {Number|String} round 圆角值,默认无圆角 (默认 0 )
128
+ * @property {String} lang 指定返回用户信息的语言,zh_CN 简体中文,zh_TW 繁体中文,en 英文
129
+ * @property {String} sessionFrom 会话来源,openType="contact"时有效
130
+ * @property {String} sendMessageTitle 会话内消息卡片标题,openType="contact"时有效
131
+ * @property {String} sendMessagePath 会话内消息卡片点击跳转小程序路径,openType="contact"时有效
132
+ * @property {String} sendMessageImg 会话内消息卡片图片,openType="contact"时有效
133
+ * @property {Boolean} showMessageCard 是否显示会话内消息卡片,设置此参数为 true,用户进入客服会话会在右下角显示"可能要发送的小程序"提示,用户点击后可以快速发送小程序消息,openType="contact"时有效 (默认 false )
134
+ * @property {String} appParameter 打开 APP 时,向 APP 传递的参数,openType=launchApp 时有效
135
+ *
136
+ * @event {Function} select 点击ActionSheet列表项时触发
137
+ * @event {Function} close 点击取消按钮时触发
138
+ * @event {Function} getuserinfo 用户点击该按钮时,会返回获取到的用户信息,回调的 detail 数据与 wx.getUserInfo 返回的一致,openType="getUserInfo"时有效
139
+ * @event {Function} contact 客服消息回调,openType="contact"时有效
140
+ * @event {Function} getphonenumber 获取用户手机号回调,openType="getPhoneNumber"时有效
141
+ * @event {Function} error 当使用开放能力时,发生错误的回调,openType="error"时有效
142
+ * @event {Function} launchapp 打开 APP 成功的回调,openType="launchApp"时有效
143
+ * @event {Function} opensetting 在打开授权设置页后回调,openType="openSetting"时有效
144
+ * @example <u-action-sheet :actions="list" :title="title" :show="show"></u-action-sheet>
145
+ */
146
+ export default {
147
+ name: "u-action-sheet",
148
+ // 一些props参数和methods方法,通过mixin混入,因为其他文件也会用到
149
+ mixins: [openType, button, uni.$u.mixin, props],
150
+ data() {
151
+ return {
152
+
153
+ }
154
+ },
155
+ computed: {
156
+ // 操作项目的样式
157
+ itemStyle() {
158
+ return (index) => {
159
+ let style = {};
160
+ if (this.actions[index].color) style.color = this.actions[index].color
161
+ if (this.actions[index].fontSize) style.fontSize = uni.$u.addUnit(this.actions[index].fontSize)
162
+ // 选项被禁用的样式
163
+ if (this.actions[index].disabled) style.color = '#c0c4cc'
164
+ return style;
165
+ }
166
+ },
167
+ },
168
+ methods: {
169
+ closeHandler() {
170
+ // 允许点击遮罩关闭时,才发出close事件
171
+ if(this.closeOnClickOverlay) {
172
+ this.$emit('close')
173
+ }
174
+ },
175
+ // 点击取消按钮
176
+ cancel() {
177
+ this.$emit('close')
178
+ },
179
+ selectHandler(index) {
180
+ const item = this.actions[index]
181
+ if (item && !item.disabled && !item.loading) {
182
+ this.$emit('select', item)
183
+ if (this.closeOnClickAction) {
184
+ this.$emit('close')
185
+ }
186
+ }
187
+ },
188
+ }
189
+ }
190
+ </script>
191
+
192
+ <style lang="scss" scoped>
193
+ @import "../../libs/css/components.scss";
194
+ $u-action-sheet-reset-button-width:100% !default;
195
+ $u-action-sheet-title-font-size: 16px !default;
196
+ $u-action-sheet-title-padding: 12px 30px !default;
197
+ $u-action-sheet-title-color: $u-main-color !default;
198
+ $u-action-sheet-header-icon-wrap-right:15px !default;
199
+ $u-action-sheet-header-icon-wrap-top:15px !default;
200
+ $u-action-sheet-description-font-size:13px !default;
201
+ $u-action-sheet-description-color:14px !default;
202
+ $u-action-sheet-description-margin: 18px 15px !default;
203
+ $u-action-sheet-item-wrap-item-padding:15px !default;
204
+ $u-action-sheet-item-wrap-name-font-size:16px !default;
205
+ $u-action-sheet-item-wrap-subname-font-size:13px !default;
206
+ $u-action-sheet-item-wrap-subname-color: #c0c4cc !default;
207
+ $u-action-sheet-item-wrap-subname-margin-top:10px !default;
208
+ $u-action-sheet-cancel-text-font-size:16px !default;
209
+ $u-action-sheet-cancel-text-color:$u-content-color !default;
210
+ $u-action-sheet-cancel-text-font-size:15px !default;
211
+ $u-action-sheet-cancel-text-hover-background-color:rgb(242, 243, 245) !default;
212
+
213
+ .u-reset-button {
214
+ width: $u-action-sheet-reset-button-width;
215
+ }
216
+
217
+ .u-action-sheet {
218
+ text-align: center;
219
+ &__header {
220
+ position: relative;
221
+ padding: $u-action-sheet-title-padding;
222
+ &__title {
223
+ font-size: $u-action-sheet-title-font-size;
224
+ color: $u-action-sheet-title-color;
225
+ font-weight: bold;
226
+ text-align: center;
227
+ }
228
+
229
+ &__icon-wrap {
230
+ position: absolute;
231
+ right: $u-action-sheet-header-icon-wrap-right;
232
+ top: $u-action-sheet-header-icon-wrap-top;
233
+ }
234
+ }
235
+
236
+ &__description {
237
+ font-size: $u-action-sheet-description-font-size;
238
+ color: $u-tips-color;
239
+ margin: $u-action-sheet-description-margin;
240
+ text-align: center;
241
+ }
242
+
243
+ &__item-wrap {
244
+
245
+ &__item {
246
+ padding: $u-action-sheet-item-wrap-item-padding;
247
+ @include flex;
248
+ align-items: center;
249
+ justify-content: center;
250
+ flex-direction: column;
251
+
252
+ &__name {
253
+ font-size: $u-action-sheet-item-wrap-name-font-size;
254
+ color: $u-main-color;
255
+ text-align: center;
256
+ }
257
+
258
+ &__subname {
259
+ font-size: $u-action-sheet-item-wrap-subname-font-size;
260
+ color: $u-action-sheet-item-wrap-subname-color;
261
+ margin-top: $u-action-sheet-item-wrap-subname-margin-top;
262
+ text-align: center;
263
+ }
264
+ }
265
+ }
266
+
267
+ &__cancel-text {
268
+ font-size: $u-action-sheet-cancel-text-font-size;
269
+ color: $u-action-sheet-cancel-text-color;
270
+ text-align: center;
271
+ padding: $u-action-sheet-cancel-text-font-size;
272
+ }
273
+
274
+ &--hover {
275
+ background-color: $u-action-sheet-cancel-text-hover-background-color;
276
+ }
277
+ }
278
+ </style>
@@ -0,0 +1,59 @@
1
+ export default {
2
+ props: {
3
+ // 图片地址,Array<String>|Array<Object>形式
4
+ urls: {
5
+ type: Array,
6
+ default: uni.$u.props.album.urls
7
+ },
8
+ // 指定从数组的对象元素中读取哪个属性作为图片地址
9
+ keyName: {
10
+ type: String,
11
+ default: uni.$u.props.album.keyName
12
+ },
13
+ // 单图时,图片长边的长度
14
+ singleSize: {
15
+ type: [String, Number],
16
+ default: uni.$u.props.album.singleSize
17
+ },
18
+ // 多图时,图片边长
19
+ multipleSize: {
20
+ type: [String, Number],
21
+ default: uni.$u.props.album.multipleSize
22
+ },
23
+ // 多图时,图片水平和垂直之间的间隔
24
+ space: {
25
+ type: [String, Number],
26
+ default: uni.$u.props.album.space
27
+ },
28
+ // 单图时,图片缩放裁剪的模式
29
+ singleMode: {
30
+ type: String,
31
+ default: uni.$u.props.album.singleMode
32
+ },
33
+ // 多图时,图片缩放裁剪的模式
34
+ multipleMode: {
35
+ type: String,
36
+ default: uni.$u.props.album.multipleMode
37
+ },
38
+ // 最多展示的图片数量,超出时最后一个位置将会显示剩余图片数量
39
+ maxCount: {
40
+ type: [String, Number],
41
+ default: uni.$u.props.album.maxCount
42
+ },
43
+ // 是否可以预览图片
44
+ previewFullImage: {
45
+ type: Boolean,
46
+ default: uni.$u.props.album.previewFullImage
47
+ },
48
+ // 每行展示图片数量,如设置,singleSize和multipleSize将会无效
49
+ rowCount: {
50
+ type: [String, Number],
51
+ default: uni.$u.props.album.rowCount
52
+ },
53
+ // 超出maxCount时是否显示查看更多的提示
54
+ showMore: {
55
+ type: Boolean,
56
+ default: uni.$u.props.album.showMore
57
+ }
58
+ }
59
+ }