@10yun/cv-mobile-ui 0.5.27 → 0.5.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/parse-pages.js +50 -14
- package/build/parse-pages2.js +11 -10
- package/other/uParse/components/wxParseAudio.vue +1 -1
- package/other/uParse/components/wxParseVideo.vue +1 -1
- package/package.json +1 -1
- package/plugins/request.js +84 -69
- package/ui-cv/components/cv-btn-base/cv-btn-base.vue +66 -14
- package/ui-cv/components/cv-code-sms/cv-code-sms.vue +22 -15
- package/ui-cv/components/cv-date-base/cv-date-base.vue +1 -1
- package/ui-cv/components/cv-input-text/input.css +13 -0
- package/ui-cv/components/cv-picker1/cv-picker1.vue +1 -1
- package/uni-ui/lib/uni-icons/changelog.md +22 -0
- package/uni-ui/lib/uni-icons/package.json +42 -0
- package/uni-ui/lib/uni-icons/readme.md +8 -0
- package/uview-plus/LICENSE +1 -1
- package/uview-plus/README.md +22 -12
- package/uview-plus/changelog.md +752 -0
- package/uview-plus/components/u--form/u--form.vue +1 -1
- package/uview-plus/components/u--image/u--image.vue +1 -1
- package/uview-plus/components/u--input/u--input.vue +3 -3
- package/uview-plus/components/u--text/u--text.vue +1 -1
- package/uview-plus/components/u--textarea/u--textarea.vue +1 -1
- package/uview-plus/{libs/config/props → components/u-action-sheet}/actionSheet.js +3 -2
- package/uview-plus/components/u-action-sheet/props.js +20 -13
- package/uview-plus/components/u-action-sheet/style.css +18 -4
- package/uview-plus/components/u-action-sheet/style.scss +2 -2
- package/uview-plus/components/u-action-sheet/u-action-sheet.vue +21 -13
- package/uview-plus/components/u-action-sheet-data/style.css +10 -0
- package/uview-plus/components/u-action-sheet-data/style.scss +12 -0
- package/uview-plus/components/u-action-sheet-data/u-action-sheet-data.vue +94 -0
- package/uview-plus/{libs/config/props → components/u-album}/album.js +5 -2
- package/uview-plus/components/u-album/props.js +40 -14
- package/uview-plus/components/u-album/style.css +16 -2
- package/uview-plus/components/u-album/style.scss +0 -1
- package/uview-plus/components/u-album/u-album.vue +55 -30
- package/uview-plus/components/u-alert/props.js +12 -11
- package/uview-plus/components/u-alert/style.css +17 -2
- package/uview-plus/components/u-alert/u-alert.vue +12 -6
- package/uview-plus/components/u-avatar/props.js +20 -18
- package/uview-plus/components/u-avatar/style.css +18 -2
- package/uview-plus/components/u-avatar/style.scss +1 -0
- package/uview-plus/components/u-avatar/u-avatar.vue +20 -15
- package/uview-plus/{libs/config/props → components/u-avatar-group}/avatarGroup.js +1 -1
- package/uview-plus/components/u-avatar-group/props.js +13 -12
- package/uview-plus/components/u-avatar-group/style.css +17 -2
- package/uview-plus/components/u-avatar-group/u-avatar-group.vue +2 -73
- package/uview-plus/{libs/config/props → components/u-back-top}/backtop.js +2 -2
- package/uview-plus/components/u-back-top/props.js +14 -13
- package/uview-plus/components/u-back-top/style.css +17 -2
- package/uview-plus/components/u-back-top/u-back-top.vue +11 -9
- package/uview-plus/{libs/config/props → components/u-badge}/badge.js +1 -1
- package/uview-plus/components/u-badge/props.js +18 -17
- package/uview-plus/components/u-badge/style.css +17 -2
- package/uview-plus/components/u-badge/u-badge.vue +11 -7
- package/uview-plus/components/u-box/props.js +27 -0
- package/uview-plus/components/u-box/style.css +77 -0
- package/uview-plus/components/u-box/style.scss +38 -0
- package/uview-plus/components/u-box/u-box.vue +3 -0
- package/uview-plus/{libs/config/props → components/u-button}/button.js +2 -1
- package/uview-plus/components/u-button/nvue-parse.scss +2 -2
- package/uview-plus/components/u-button/props.js +37 -40
- package/uview-plus/components/u-button/style.css +21 -5
- package/uview-plus/components/u-button/u-button.vue +32 -21
- package/uview-plus/components/u-button/vue-parse.scss +4 -3
- package/uview-plus/components/u-button/vue.scss +9 -8
- package/uview-plus/{libs/config/props → components/u-calendar}/calendar.js +7 -4
- package/uview-plus/components/u-calendar/header.vue +3 -1
- package/uview-plus/components/u-calendar/month.vue +43 -19
- package/uview-plus/components/u-calendar/props.js +45 -30
- package/uview-plus/components/u-calendar/style.css +17 -2
- package/uview-plus/components/u-calendar/u-calendar.vue +53 -17
- package/uview-plus/components/u-car-keyboard/props.js +5 -3
- package/uview-plus/components/u-car-keyboard/style.css +18 -3
- package/uview-plus/components/u-car-keyboard/u-car-keyboard.vue +205 -1
- package/uview-plus/components/u-card/card.js +40 -0
- package/uview-plus/components/u-card/props.js +134 -0
- package/uview-plus/components/u-card/style.css +60 -0
- package/uview-plus/components/u-card/style.scss +47 -0
- package/uview-plus/components/u-card/u-card.vue +3 -0
- package/uview-plus/components/u-cate-tab/style.css +97 -0
- package/uview-plus/components/u-cate-tab/style.scss +114 -0
- package/uview-plus/components/u-cate-tab/u-cate-tab.vue +3 -0
- package/uview-plus/components/u-cell/props.js +24 -23
- package/uview-plus/components/u-cell/style.css +43 -3
- package/uview-plus/components/u-cell/style.scss +25 -2
- package/uview-plus/components/u-cell/u-cell.vue +44 -31
- package/uview-plus/components/u-cell-group/props.js +6 -5
- package/uview-plus/components/u-cell-group/style.css +17 -2
- package/uview-plus/components/u-cell-group/u-cell-group.vue +10 -6
- package/uview-plus/components/u-checkbox/props.js +22 -16
- package/uview-plus/components/u-checkbox/style.css +17 -2
- package/uview-plus/components/u-checkbox/u-checkbox.vue +87 -57
- package/uview-plus/{libs/config/props → components/u-checkbox-group}/checkboxGroup.js +1 -1
- package/uview-plus/components/u-checkbox-group/props.js +21 -19
- package/uview-plus/components/u-checkbox-group/style.css +17 -2
- package/uview-plus/components/u-checkbox-group/u-checkbox-group.vue +5 -5
- package/uview-plus/components/u-circle-progress/props.js +5 -4
- package/uview-plus/components/u-circle-progress/style.css +23 -8
- package/uview-plus/components/u-circle-progress/u-circle-progress.vue +5 -4
- package/uview-plus/components/u-code/props.js +10 -9
- package/uview-plus/components/u-code/style.css +17 -2
- package/uview-plus/components/u-code/u-code.vue +6 -5
- package/uview-plus/components/u-code-input/props.js +28 -18
- package/uview-plus/components/u-code-input/style.css +22 -6
- package/uview-plus/components/u-code-input/style.scss +5 -4
- package/uview-plus/components/u-code-input/u-code-input.vue +57 -11
- package/uview-plus/components/u-col/props.js +9 -8
- package/uview-plus/components/u-col/style.css +29 -14
- package/uview-plus/components/u-col/u-col.vue +10 -8
- package/uview-plus/components/u-collapse/props.js +7 -6
- package/uview-plus/components/u-collapse/style.css +17 -2
- package/uview-plus/components/u-collapse/u-collapse.vue +4 -3
- package/uview-plus/{libs/config/props → components/u-collapse-item}/collapseItem.js +7 -1
- package/uview-plus/components/u-collapse-item/props.js +51 -14
- package/uview-plus/components/u-collapse-item/style.css +17 -2
- package/uview-plus/components/u-collapse-item/u-collapse-item.vue +3 -1
- package/uview-plus/{libs/config/props → components/u-column-notice}/columnNotice.js +2 -1
- package/uview-plus/components/u-column-notice/props.js +18 -13
- package/uview-plus/components/u-column-notice/style.css +17 -2
- package/uview-plus/components/u-column-notice/u-column-notice.vue +15 -7
- package/uview-plus/components/u-copy/u-copy.vue +1 -0
- package/uview-plus/components/u-count-down/props.js +8 -7
- package/uview-plus/components/u-count-down/style.css +17 -2
- package/uview-plus/components/u-count-down/u-count-down.vue +146 -1
- package/uview-plus/components/u-count-to/props.js +15 -14
- package/uview-plus/components/u-count-to/style.css +17 -2
- package/uview-plus/components/u-count-to/u-count-to.vue +7 -4
- package/uview-plus/{libs/config/props → components/u-datetime-picker}/datetimePicker.js +7 -1
- package/uview-plus/components/u-datetime-picker/props.js +68 -26
- package/uview-plus/components/u-datetime-picker/style.css +42 -1
- package/uview-plus/components/u-datetime-picker/style.scss +26 -0
- package/uview-plus/components/u-datetime-picker/u-datetime-picker.vue +140 -40
- package/uview-plus/components/u-divider/props.js +12 -11
- package/uview-plus/components/u-divider/style.css +17 -2
- package/uview-plus/components/u-divider/u-divider.vue +8 -5
- package/uview-plus/components/u-dropdown/props.js +12 -17
- package/uview-plus/components/u-dropdown/style.css +63 -3
- package/uview-plus/components/u-dropdown/style.scss +68 -18
- package/uview-plus/components/u-dropdown/u-dropdown.vue +208 -1
- package/uview-plus/components/u-dropdown-item/props.js +47 -37
- package/uview-plus/components/u-dropdown-item/style.css +19 -6
- package/uview-plus/components/u-dropdown-item/style.scss +4 -9
- package/uview-plus/components/u-dropdown-item/u-dropdown-item.vue +126 -1
- package/uview-plus/components/u-empty/props.js +15 -14
- package/uview-plus/components/u-empty/style.css +17 -2
- package/uview-plus/components/u-empty/u-empty.vue +12 -8
- package/uview-plus/components/u-float-button/style.css +41 -0
- package/uview-plus/components/u-float-button/style.scss +17 -0
- package/uview-plus/components/u-float-button/u-float-button.vue +164 -0
- package/uview-plus/{libs/config/props → components/u-form}/form.js +3 -3
- package/uview-plus/components/u-form/props.js +12 -11
- package/uview-plus/components/u-form/u-form.vue +1 -1
- package/uview-plus/{libs/config/props → components/u-form-item}/formItem.js +2 -0
- package/uview-plus/components/u-form-item/props.js +22 -11
- package/uview-plus/components/u-form-item/style.css +17 -4
- package/uview-plus/components/u-form-item/style.scss +0 -2
- package/uview-plus/components/u-form-item/u-form-item.vue +42 -15
- package/uview-plus/components/u-gap/props.js +8 -7
- package/uview-plus/components/u-gap/style.css +17 -2
- package/uview-plus/components/u-gap/u-gap.vue +8 -7
- package/uview-plus/components/u-grid/props.js +12 -6
- package/uview-plus/components/u-grid/style.css +23 -3
- package/uview-plus/components/u-grid/style.scss +8 -1
- package/uview-plus/components/u-grid/u-grid.vue +11 -4
- package/uview-plus/components/u-grid-item/props.js +6 -5
- package/uview-plus/components/u-grid-item/style.css +17 -2
- package/uview-plus/components/u-grid-item/u-grid-item.vue +17 -14
- package/uview-plus/{libs/config/props → components/u-icon}/icon.js +1 -1
- package/uview-plus/components/u-icon/props.js +21 -20
- package/uview-plus/components/u-icon/style.css +19 -4
- package/uview-plus/components/u-icon/style.scss +2 -3
- package/uview-plus/components/u-icon/u-icon.vue +85 -34
- package/uview-plus/components/u-image/props.js +20 -19
- package/uview-plus/components/u-image/style.css +17 -2
- package/uview-plus/components/u-image/u-image.vue +59 -24
- package/uview-plus/components/u-index-anchor/props.js +9 -8
- package/uview-plus/components/u-index-anchor/style.css +17 -2
- package/uview-plus/components/u-index-anchor/u-index-anchor.vue +12 -10
- package/uview-plus/components/u-index-item/props.js +5 -3
- package/uview-plus/components/u-index-item/style.css +17 -2
- package/uview-plus/components/u-index-item/u-index-item.vue +7 -6
- package/uview-plus/{libs/config/props → components/u-index-list}/indexList.js +3 -2
- package/uview-plus/components/u-index-list/props.js +14 -8
- package/uview-plus/components/u-index-list/style.css +19 -3
- package/uview-plus/components/u-index-list/style.scss +2 -1
- package/uview-plus/components/u-index-list/u-index-list.vue +193 -60
- package/uview-plus/{libs/config/props → components/u-input}/input.js +1 -1
- package/uview-plus/components/u-input/props.js +40 -38
- package/uview-plus/components/u-input/style.css +17 -2
- package/uview-plus/components/u-input/u-input.vue +70 -54
- package/uview-plus/components/u-keyboard/props.js +20 -19
- package/uview-plus/components/u-keyboard/style.css +17 -2
- package/uview-plus/components/u-keyboard/u-keyboard.vue +4 -3
- package/uview-plus/components/u-lazy-load/style.css +38 -0
- package/uview-plus/components/u-lazy-load/style.scss +17 -0
- package/uview-plus/components/u-lazy-load/u-lazy-load.vue +3 -0
- package/uview-plus/components/u-line/props.js +10 -9
- package/uview-plus/components/u-line/style.css +17 -2
- package/uview-plus/components/u-line/u-line.vue +7 -6
- package/uview-plus/components/u-line-progress/props.js +9 -8
- package/uview-plus/components/u-line-progress/style.css +17 -2
- package/uview-plus/components/u-line-progress/u-line-progress.vue +11 -8
- package/uview-plus/{libs/config/props → components/u-link}/link.js +1 -1
- package/uview-plus/components/u-link/props.js +11 -10
- package/uview-plus/components/u-link/style.css +17 -2
- package/uview-plus/components/u-link/u-link.vue +10 -7
- package/uview-plus/components/u-list/props.js +43 -18
- package/uview-plus/components/u-list/style.css +17 -2
- package/uview-plus/components/u-list/u-list.vue +41 -10
- package/uview-plus/components/u-list-item/props.js +5 -4
- package/uview-plus/components/u-list-item/style.css +17 -2
- package/uview-plus/components/u-list-item/u-list-item.vue +5 -4
- package/uview-plus/{libs/config/props → components/u-loading-icon}/loadingIcon.js +1 -1
- package/uview-plus/components/u-loading-icon/props.js +15 -14
- package/uview-plus/components/u-loading-icon/style.css +21 -5
- package/uview-plus/components/u-loading-icon/style.scss +3 -3
- package/uview-plus/components/u-loading-icon/u-loading-icon.vue +3 -1
- package/uview-plus/{libs/config/props → components/u-loading-page}/loadingPage.js +2 -1
- package/uview-plus/components/u-loading-page/props.js +19 -12
- package/uview-plus/components/u-loading-page/style.css +19 -4
- package/uview-plus/components/u-loading-page/u-loading-page.vue +15 -9
- package/uview-plus/components/u-loadmore/props.js +22 -21
- package/uview-plus/components/u-loadmore/style.css +17 -2
- package/uview-plus/components/u-loadmore/u-loadmore.vue +13 -9
- package/uview-plus/components/u-mask/u-mask.vue +122 -0
- package/uview-plus/{libs/config/props → components/u-modal}/modal.js +5 -1
- package/uview-plus/components/u-modal/props.js +40 -19
- package/uview-plus/components/u-modal/style.css +21 -2
- package/uview-plus/components/u-modal/style.scss +69 -65
- package/uview-plus/components/u-modal/u-modal.vue +184 -1
- package/uview-plus/{libs/config/props → components/u-navbar}/navbar.js +2 -1
- package/uview-plus/components/u-navbar/props.js +26 -19
- package/uview-plus/components/u-navbar/style.css +17 -2
- package/uview-plus/components/u-navbar/u-navbar.vue +25 -12
- package/uview-plus/components/u-navbar-mini/props.js +51 -0
- package/uview-plus/components/u-navbar-mini/style.css +60 -0
- package/uview-plus/components/u-navbar-mini/style.scss +38 -0
- package/uview-plus/components/u-navbar-mini/u-navbar-mini.vue +89 -0
- package/uview-plus/components/u-no-network/props.js +7 -6
- package/uview-plus/components/u-no-network/style.css +17 -2
- package/uview-plus/components/u-no-network/u-no-network.vue +8 -6
- package/uview-plus/{libs/config/props → components/u-notice-bar}/noticeBar.js +3 -2
- package/uview-plus/components/u-notice-bar/props.js +21 -16
- package/uview-plus/components/u-notice-bar/style.css +17 -2
- package/uview-plus/components/u-notice-bar/u-notice-bar.vue +10 -4
- package/uview-plus/components/u-notify/props.js +13 -12
- package/uview-plus/components/u-notify/style.css +17 -2
- package/uview-plus/components/u-notify/u-notify.vue +20 -16
- package/uview-plus/{libs/config/props → components/u-number-box}/numberBox.js +5 -1
- package/uview-plus/components/u-number-box/props.js +46 -25
- package/uview-plus/components/u-number-box/style.css +17 -2
- package/uview-plus/components/u-number-box/u-number-box.vue +72 -35
- package/uview-plus/components/u-number-keyboard/props.js +7 -6
- package/uview-plus/components/u-number-keyboard/style.css +19 -4
- package/uview-plus/components/u-number-keyboard/u-number-keyboard.vue +9 -6
- package/uview-plus/components/u-overlay/props.js +8 -7
- package/uview-plus/components/u-overlay/style.css +17 -2
- package/uview-plus/components/u-overlay/u-overlay.vue +14 -5
- package/uview-plus/components/u-parse/node/node.vue +12 -4
- package/uview-plus/components/u-parse/parser.js +1337 -1333
- package/uview-plus/components/u-parse/props.js +48 -47
- package/uview-plus/components/u-parse/u-parse.vue +6 -6
- package/uview-plus/{libs/config/props → components/u-picker}/picker.js +10 -4
- package/uview-plus/components/u-picker/props.js +60 -18
- package/uview-plus/components/u-picker/style.css +29 -2
- package/uview-plus/components/u-picker/style.scss +12 -1
- package/uview-plus/components/u-picker/u-picker.vue +174 -58
- package/uview-plus/components/u-picker-column/props.js +4 -3
- package/uview-plus/components/u-picker-column/style.css +17 -2
- package/uview-plus/components/u-picker-column/u-picker-column.vue +3 -3
- package/uview-plus/components/u-picker-data/style.css +10 -0
- package/uview-plus/components/u-picker-data/style.scss +12 -0
- package/uview-plus/components/u-picker-data/u-picker-data.vue +110 -0
- package/uview-plus/{libs/config/props → components/u-popup}/popup.js +1 -1
- package/uview-plus/components/u-popup/props.js +19 -18
- package/uview-plus/components/u-popup/style.css +27 -2
- package/uview-plus/components/u-popup/style.scss +86 -75
- package/uview-plus/components/u-popup/u-popup.vue +250 -1
- package/uview-plus/components/u-qrcode/qrcode.js +1235 -0
- package/uview-plus/components/u-qrcode/style.css +20 -0
- package/uview-plus/components/u-qrcode/style.scss +23 -0
- package/uview-plus/components/u-qrcode/u-qrcode.vue +3 -0
- package/uview-plus/components/u-radio/props.js +17 -16
- package/uview-plus/components/u-radio/style.css +17 -2
- package/uview-plus/components/u-radio/u-radio.vue +32 -27
- package/uview-plus/components/u-radio-group/props.js +26 -20
- package/uview-plus/{libs/config/props → components/u-radio-group}/radioGroup.js +4 -3
- package/uview-plus/components/u-radio-group/style.css +17 -2
- package/uview-plus/components/u-radio-group/u-radio-group.vue +12 -4
- package/uview-plus/components/u-rate/props.js +18 -17
- package/uview-plus/components/u-rate/style.css +17 -2
- package/uview-plus/components/u-rate/u-rate.vue +17 -14
- package/uview-plus/components/u-read-more/props.js +12 -11
- package/uview-plus/components/u-read-more/style.css +18 -2
- package/uview-plus/components/u-read-more/style.scss +23 -22
- package/uview-plus/components/u-read-more/u-read-more.vue +2 -118
- package/uview-plus/components/u-row/props.js +7 -6
- package/uview-plus/components/u-row/style.css +17 -2
- package/uview-plus/components/u-row/u-row.vue +9 -7
- package/uview-plus/components/u-row-notice/props.js +11 -10
- package/uview-plus/components/u-row-notice/style.css +18 -2
- package/uview-plus/components/u-row-notice/style.scss +1 -0
- package/uview-plus/components/u-row-notice/u-row-notice.vue +17 -15
- package/uview-plus/components/u-safe-bottom/props.js +5 -3
- package/uview-plus/components/u-safe-bottom/u-safe-bottom.vue +3 -1
- package/uview-plus/components/u-scroll-list/nvue.js +1 -3
- package/uview-plus/components/u-scroll-list/props.js +10 -9
- package/uview-plus/components/u-scroll-list/style.css +18 -2
- package/uview-plus/components/u-scroll-list/style.scss +2 -0
- package/uview-plus/components/u-scroll-list/u-scroll-list.vue +17 -12
- package/uview-plus/components/u-search/props.js +42 -27
- package/uview-plus/{libs/config/props → components/u-search}/search.js +3 -2
- package/uview-plus/components/u-search/style.css +23 -2
- package/uview-plus/components/u-search/style.scss +8 -0
- package/uview-plus/components/u-search/u-search.vue +22 -8
- package/uview-plus/components/u-select/style.css +45 -0
- package/uview-plus/components/u-select/style.scss +47 -0
- package/uview-plus/components/u-select/u-select.vue +3 -0
- package/uview-plus/components/u-skeleton/props.js +15 -14
- package/uview-plus/components/u-skeleton/style.css +17 -2
- package/uview-plus/components/u-skeleton/u-skeleton.vue +22 -19
- package/uview-plus/components/u-slider/mpwxs.js +2 -1
- package/uview-plus/components/u-slider/nvue.js +2 -1
- package/uview-plus/components/u-slider/props.js +50 -14
- package/uview-plus/{libs/config/props → components/u-slider}/slider.js +3 -1
- package/uview-plus/components/u-slider/style.css +81 -1
- package/uview-plus/components/u-slider/style.scss +76 -0
- package/uview-plus/components/u-slider/u-slider.vue +446 -1
- package/uview-plus/components/u-status-bar/props.js +10 -4
- package/uview-plus/{libs/config/props → components/u-status-bar}/statusBar.js +2 -1
- package/uview-plus/components/u-status-bar/u-status-bar.vue +23 -8
- package/uview-plus/components/u-steps/props.js +11 -10
- package/uview-plus/components/u-steps/style.css +21 -2
- package/uview-plus/components/u-steps/style.scss +4 -0
- package/uview-plus/components/u-steps/u-steps.vue +9 -5
- package/uview-plus/components/u-steps-item/props.js +13 -7
- package/uview-plus/components/u-steps-item/style.css +19 -3
- package/uview-plus/components/u-steps-item/style.scss +3 -2
- package/uview-plus/components/u-steps-item/u-steps-item.vue +53 -25
- package/uview-plus/components/u-sticky/props.js +10 -9
- package/uview-plus/components/u-sticky/u-sticky.vue +21 -14
- package/uview-plus/components/u-subsection/props.js +13 -12
- package/uview-plus/components/u-subsection/style.css +31 -16
- package/uview-plus/components/u-subsection/style.scss +13 -13
- package/uview-plus/components/u-subsection/u-subsection.vue +35 -22
- package/uview-plus/components/u-swipe-action/props.js +10 -4
- package/uview-plus/components/u-swipe-action/u-swipe-action.vue +18 -3
- package/uview-plus/components/u-swipe-action-item/alipay.sjs +229 -0
- package/uview-plus/components/u-swipe-action-item/index.wxs +20 -15
- package/uview-plus/components/u-swipe-action-item/nvue - backup.js +3 -2
- package/uview-plus/components/u-swipe-action-item/nvue.js +4 -3
- package/uview-plus/components/u-swipe-action-item/other.js +178 -0
- package/uview-plus/components/u-swipe-action-item/props.js +15 -10
- package/uview-plus/components/u-swipe-action-item/style.css +18 -2
- package/uview-plus/components/u-swipe-action-item/style.scss +1 -0
- package/uview-plus/{libs/config/props → components/u-swipe-action-item}/swipeActionItem.js +1 -0
- package/uview-plus/components/u-swipe-action-item/u-swipe-action-item.vue +85 -28
- package/uview-plus/components/u-swiper/props.js +28 -27
- package/uview-plus/components/u-swiper/style.css +20 -2
- package/uview-plus/components/u-swiper/style.scss +3 -0
- package/uview-plus/{libs/config/props → components/u-swiper}/swiper.js +1 -1
- package/uview-plus/components/u-swiper/u-swiper.vue +63 -52
- package/uview-plus/components/u-swiper-indicator/props.js +9 -8
- package/uview-plus/components/u-swiper-indicator/style.css +17 -2
- package/uview-plus/components/u-swiper-indicator/u-swiper-indicator.vue +10 -6
- package/uview-plus/components/u-switch/props.js +15 -14
- package/uview-plus/components/u-switch/style.css +17 -2
- package/uview-plus/components/u-switch/u-switch.vue +16 -14
- package/uview-plus/components/u-tabbar/props.js +13 -11
- package/uview-plus/components/u-tabbar/style.css +17 -2
- package/uview-plus/components/u-tabbar/u-tabbar.vue +6 -5
- package/uview-plus/components/u-tabbar-item/props.js +10 -9
- package/uview-plus/components/u-tabbar-item/style.css +22 -2
- package/uview-plus/components/u-tabbar-item/style.scss +5 -0
- package/uview-plus/components/u-tabbar-item/u-tabbar-item.vue +8 -5
- package/uview-plus/components/u-table/props.js +4 -3
- package/uview-plus/components/u-table/style.css +17 -2
- package/uview-plus/components/u-table/u-table.vue +3 -3
- package/uview-plus/components/u-tabs/props.js +21 -15
- package/uview-plus/components/u-tabs/style.css +22 -3
- package/uview-plus/components/u-tabs/style.scss +5 -1
- package/uview-plus/{libs/config/props → components/u-tabs}/tabs.js +9 -8
- package/uview-plus/components/u-tabs/u-tabs.vue +78 -24
- package/uview-plus/components/u-tabs-item/props.js +4 -3
- package/uview-plus/components/u-tabs-item/u-tabs-item.vue +3 -3
- package/uview-plus/components/u-tag/props.js +44 -18
- package/uview-plus/components/u-tag/style.css +17 -2
- package/uview-plus/components/u-tag/tag.js +35 -0
- package/uview-plus/components/u-tag/u-tag.vue +177 -1
- package/uview-plus/components/u-td/props.js +4 -3
- package/uview-plus/components/u-td/style.css +17 -2
- package/uview-plus/components/u-td/u-td.vue +3 -3
- package/uview-plus/components/u-text/props.js +30 -24
- package/uview-plus/components/u-text/style.css +17 -6
- package/uview-plus/components/u-text/style.scss +58 -62
- package/uview-plus/{libs/config/props → components/u-text}/text.js +4 -3
- package/uview-plus/components/u-text/u-text.vue +2 -143
- package/uview-plus/components/u-text/value.js +14 -12
- package/uview-plus/components/u-textarea/props.js +28 -26
- package/uview-plus/components/u-textarea/style.css +17 -2
- package/uview-plus/components/u-textarea/u-textarea.vue +2 -221
- package/uview-plus/components/u-toast/style.css +18 -3
- package/uview-plus/{libs/config/props → components/u-toast}/toast.js +2 -2
- package/uview-plus/components/u-toast/u-toast.vue +31 -21
- package/uview-plus/components/u-toolbar/props.js +15 -9
- package/uview-plus/components/u-toolbar/style.css +24 -2
- package/uview-plus/components/u-toolbar/style.scss +5 -0
- package/uview-plus/{libs/config/props → components/u-toolbar}/toolbar.js +1 -1
- package/uview-plus/components/u-toolbar/u-toolbar.vue +34 -23
- package/uview-plus/components/u-tooltip/props.js +15 -14
- package/uview-plus/components/u-tooltip/style.css +17 -2
- package/uview-plus/{libs/config/props → components/u-tooltip}/tooltip.js +1 -1
- package/uview-plus/components/u-tooltip/u-tooltip.vue +22 -44
- package/uview-plus/components/u-tr/props.js +4 -3
- package/uview-plus/components/u-tr/style.css +16 -1
- package/uview-plus/components/u-tr/u-tr.vue +3 -3
- package/uview-plus/components/u-transition/props.js +8 -7
- package/uview-plus/components/u-transition/style.css +17 -2
- package/uview-plus/components/u-transition/transition.js +18 -164
- package/uview-plus/components/u-transition/transitionMixin.js +163 -0
- package/uview-plus/components/u-transition/u-transition.vue +8 -7
- package/uview-plus/components/u-upload/mixin.js +6 -4
- package/uview-plus/components/u-upload/props.js +73 -26
- package/uview-plus/components/u-upload/style.css +44 -8
- package/uview-plus/components/u-upload/style.scss +22 -0
- package/uview-plus/components/u-upload/u-upload.vue +463 -106
- package/uview-plus/{libs/config/props → components/u-upload}/upload.js +13 -4
- package/uview-plus/components/u-upload/utils.js +82 -49
- package/uview-plus/components/u-view/style.css +26 -0
- package/uview-plus/components/u-view/style.scss +4 -0
- package/uview-plus/components/u-view/u-view.vue +3 -0
- package/uview-plus/components/u-waterfall/style.css +51 -0
- package/uview-plus/components/u-waterfall/style.scss +23 -0
- package/uview-plus/components/u-waterfall/u-waterfall.vue +3 -0
- package/uview-plus/index.css +2157 -943
- package/uview-plus/index.js +89 -21
- package/uview-plus/libs/config/config.js +23 -2
- package/uview-plus/libs/config/props.js +120 -94
- package/uview-plus/libs/css/color-libcss.scss +117 -0
- package/uview-plus/libs/css/color.scss +156 -0
- package/uview-plus/libs/css/common-libcss.scss +118 -14
- package/uview-plus/libs/css/common.scss +27 -12
- package/uview-plus/libs/css/components-libcss.scss +16 -1
- package/uview-plus/libs/css/components.scss +21 -2
- package/uview-plus/libs/css/flex-libcss.scss +1868 -924
- package/uview-plus/libs/css/flex.scss +151 -83
- package/uview-plus/libs/css/vue-libcss.scss +8 -4
- package/uview-plus/libs/css/vue.scss +3 -2
- package/uview-plus/libs/function/calc.js +64 -0
- package/uview-plus/libs/function/colorGradient.js +8 -8
- package/uview-plus/libs/function/debounce.js +2 -2
- package/uview-plus/libs/function/digit.js +5 -5
- package/uview-plus/libs/function/http.js +4 -0
- package/uview-plus/libs/function/index.js +213 -68
- package/uview-plus/libs/function/test.js +64 -32
- package/uview-plus/libs/function/throttle.js +3 -3
- package/uview-plus/libs/luch-request/core/Request.js +1 -0
- package/uview-plus/libs/mixin/button.js +6 -2
- package/uview-plus/libs/mixin/mixin.js +49 -13
- package/uview-plus/libs/mixin/mpMixin.js +6 -2
- package/uview-plus/libs/mixin/mpShare.js +24 -10
- package/uview-plus/libs/mixin/openType.js +4 -2
- package/uview-plus/libs/mixin/style.js +10 -9
- package/uview-plus/libs/mixin/touch.js +4 -2
- package/uview-plus/libs/util/gcanvas/bridge/bridge-weex.js +241 -0
- package/uview-plus/libs/util/gcanvas/context-2d/FillStyleLinearGradient.js +18 -0
- package/uview-plus/libs/util/gcanvas/context-2d/FillStylePattern.js +8 -0
- package/uview-plus/libs/util/gcanvas/context-2d/FillStyleRadialGradient.js +17 -0
- package/uview-plus/libs/util/gcanvas/context-2d/RenderingContext.js +666 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/ActiveInfo.js +11 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/Buffer.js +21 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/Framebuffer.js +21 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/GLenum.js +298 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/GLmethod.js +142 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/GLtype.js +23 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/Program.js +21 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/Renderbuffer.js +21 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/RenderingContext.js +1191 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/Shader.js +22 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/ShaderPrecisionFormat.js +11 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/Texture.js +22 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/UniformLocation.js +22 -0
- package/uview-plus/libs/util/gcanvas/context-webgl/classUtils.js +3 -0
- package/uview-plus/libs/util/gcanvas/env/canvas.js +74 -0
- package/uview-plus/libs/util/gcanvas/env/image.js +96 -0
- package/uview-plus/libs/util/gcanvas/env/tool.js +24 -0
- package/uview-plus/libs/util/gcanvas/index.js +39 -0
- package/uview-plus/libs/util/route.js +6 -6
- package/uview-plus/libs/vue.js +3 -0
- package/uview-plus/package.json +15 -10
- package/uview-plus/types/comps/_common.d.ts +9 -0
- package/uview-plus/types/comps/actionSheet.d.ts +121 -0
- package/uview-plus/types/comps/album.d.ts +82 -0
- package/uview-plus/types/comps/alert.d.ts +55 -0
- package/uview-plus/types/comps/avatar.d.ts +85 -0
- package/uview-plus/types/comps/avatarGroup.d.ts +62 -0
- package/uview-plus/types/comps/backTop.d.ts +74 -0
- package/uview-plus/types/comps/badge.d.ts +76 -0
- package/uview-plus/types/comps/button.d.ts +169 -0
- package/uview-plus/types/comps/calendar.d.ts +164 -0
- package/uview-plus/types/comps/cell.d.ts +133 -0
- package/uview-plus/types/comps/cellGroup.d.ts +27 -0
- package/uview-plus/types/comps/checkbox.d.ts +69 -0
- package/uview-plus/types/comps/checkboxGroup.d.ts +93 -0
- package/uview-plus/types/comps/code.d.ts +69 -0
- package/uview-plus/types/comps/codeInput.d.ts +98 -0
- package/uview-plus/types/comps/col.d.ts +43 -0
- package/uview-plus/types/comps/collapse.d.ts +52 -0
- package/uview-plus/types/comps/collapseItem.d.ts +83 -0
- package/uview-plus/types/comps/countDown.d.ts +60 -0
- package/uview-plus/types/comps/countTo.d.ts +88 -0
- package/uview-plus/types/comps/datetimePicker.d.ts +146 -0
- package/uview-plus/types/comps/divider.d.ts +58 -0
- package/uview-plus/types/comps/empty.d.ts +72 -0
- package/uview-plus/types/comps/form.d.ts +76 -0
- package/uview-plus/types/comps/formItem.d.ts +68 -0
- package/uview-plus/types/comps/gap.d.ts +35 -0
- package/uview-plus/types/comps/grid.d.ts +34 -0
- package/uview-plus/types/comps/gridItem.d.ts +28 -0
- package/uview-plus/types/comps/icon.d.ts +93 -0
- package/uview-plus/types/comps/image.d.ts +119 -0
- package/uview-plus/types/comps/indexAnchor.d.ts +38 -0
- package/uview-plus/types/comps/indexItem.d.ts +18 -0
- package/uview-plus/types/comps/indexList.d.ts +39 -0
- package/uview-plus/types/comps/input.d.ts +234 -0
- package/uview-plus/types/comps/keyboard.d.ts +125 -0
- package/uview-plus/types/comps/line.d.ts +44 -0
- package/uview-plus/types/comps/lineProgress.d.ts +51 -0
- package/uview-plus/types/comps/link.d.ts +51 -0
- package/uview-plus/types/comps/list.d.ts +92 -0
- package/uview-plus/types/comps/listItem.d.ts +18 -0
- package/uview-plus/types/comps/loadMore.d.ts +108 -0
- package/uview-plus/types/comps/loadingIcon.d.ts +68 -0
- package/uview-plus/types/comps/loadingPage.d.ts +58 -0
- package/uview-plus/types/comps/modal.d.ts +115 -0
- package/uview-plus/types/comps/navbar.d.ts +113 -0
- package/uview-plus/types/comps/noNetwork.d.ts +40 -0
- package/uview-plus/types/comps/noticeBar.d.ts +85 -0
- package/uview-plus/types/comps/notify.d.ts +73 -0
- package/uview-plus/types/comps/numberBox.d.ts +155 -0
- package/uview-plus/types/comps/overlay.d.ts +46 -0
- package/uview-plus/types/comps/parse.d.ts +101 -0
- package/uview-plus/types/comps/picker.d.ts +115 -0
- package/uview-plus/types/comps/popup.d.ts +103 -0
- package/uview-plus/types/comps/radio.d.ts +77 -0
- package/uview-plus/types/comps/radioGroup.d.ts +97 -0
- package/uview-plus/types/comps/rate.d.ts +85 -0
- package/uview-plus/types/comps/readMore.d.ts +80 -0
- package/uview-plus/types/comps/row.d.ts +34 -0
- package/uview-plus/types/comps/safeBottom.d.ts +16 -0
- package/uview-plus/types/comps/scrollList.d.ts +51 -0
- package/uview-plus/types/comps/search.d.ts +172 -0
- package/uview-plus/types/comps/skeleton.d.ts +70 -0
- package/uview-plus/types/comps/slider.d.ts +79 -0
- package/uview-plus/types/comps/statusBar.d.ts +22 -0
- package/uview-plus/types/comps/steps.d.ts +48 -0
- package/uview-plus/types/comps/stepsItem.d.ts +41 -0
- package/uview-plus/types/comps/sticky.d.ts +48 -0
- package/uview-plus/types/comps/subsection.d.ts +64 -0
- package/uview-plus/types/comps/swipeAction.d.ts +24 -0
- package/uview-plus/types/comps/swipeActionItem.d.ts +58 -0
- package/uview-plus/types/comps/swiper.d.ts +142 -0
- package/uview-plus/types/comps/swiperIndicator.d.ts +37 -0
- package/uview-plus/types/comps/switch.d.ts +73 -0
- package/uview-plus/types/comps/tabbar.d.ts +54 -0
- package/uview-plus/types/comps/tabbarItem.d.ts +52 -0
- package/uview-plus/types/comps/tabs.d.ts +85 -0
- package/uview-plus/types/comps/tag.d.ts +93 -0
- package/uview-plus/types/comps/text.d.ts +110 -0
- package/uview-plus/types/comps/textarea.d.ts +158 -0
- package/uview-plus/types/comps/toast.d.ts +63 -0
- package/uview-plus/types/comps/tooltip.d.ts +71 -0
- package/uview-plus/types/comps/transition.d.ts +61 -0
- package/uview-plus/types/comps/upload.d.ts +204 -0
- package/uview-plus/types/comps.d.ts +101 -0
- package/uview-plus/types/index.d.ts +172 -0
- package/uview-plus/types/package.json +26 -0
- package/uview-ui/changelog.md +26 -0
- package/uview-ui/components/u--form/u--form.vue +1 -1
- package/uview-ui/components/u--image/u--image.vue +1 -1
- package/uview-ui/components/u--input/u--input.vue +1 -1
- package/uview-ui/components/u--text/u--text.vue +1 -1
- package/uview-ui/components/u--textarea/u--textarea.vue +1 -1
- package/uview-ui/components/u-action-sheet/props.js +1 -1
- package/uview-ui/components/u-action-sheet/style.css +1 -1
- package/uview-ui/components/u-avatar/style.css +1 -0
- package/uview-ui/components/u-avatar/style.scss +1 -0
- package/uview-ui/components/u-button/nvue-parse.scss +1 -1
- package/uview-ui/components/u-button/style.css +2 -2
- package/uview-ui/components/u-button/u-button.vue +7 -2
- package/uview-ui/components/u-button/vue-parse.scss +1 -1
- package/uview-ui/components/u-car-keyboard/style.css +1 -1
- package/uview-ui/components/u-checkbox/u-checkbox.vue +2 -2
- package/uview-ui/components/u-circle-progress/style.css +6 -6
- package/uview-ui/components/u-col/style.css +13 -13
- package/uview-ui/components/u-datetime-picker/props.js +4 -0
- package/uview-ui/components/u-datetime-picker/u-datetime-picker.vue +13 -2
- package/uview-ui/components/u-form-item/u-form-item.vue +1 -1
- package/uview-ui/components/u-icon/style.css +1 -1
- package/uview-ui/components/u-image/u-image.vue +3 -2
- package/uview-ui/components/u-input/style.css +3 -0
- package/uview-ui/components/u-input/style.scss +8 -0
- package/uview-ui/components/u-input/u-input.vue +5 -5
- package/uview-ui/components/u-loading-icon/style.css +1 -1
- package/uview-ui/components/u-loading-page/style.css +2 -2
- package/uview-ui/components/u-modal/props.js +5 -0
- package/uview-ui/components/u-modal/u-modal.vue +1 -1
- package/uview-ui/components/u-number-keyboard/style.css +2 -2
- package/uview-ui/components/u-parse/u-parse.vue +1 -1
- package/uview-ui/components/u-picker/u-picker.vue +5 -2
- package/uview-ui/components/u-popup/u-popup.vue +1 -1
- package/uview-ui/components/u-radio/props.js +1 -1
- package/uview-ui/components/u-radio/u-radio.vue +2 -2
- package/uview-ui/components/u-search/style.css +1 -1
- package/uview-ui/components/u-skeleton/u-skeleton.vue +2 -2
- package/uview-ui/components/u-steps-item/u-steps-item.vue +2 -2
- package/uview-ui/components/u-subsection/style.css +1 -1
- package/uview-ui/components/u-swipe-action-item/style.css +2 -2
- package/uview-ui/components/u-tabs/u-tabs.vue +10 -1
- package/uview-ui/components/u-toast/style.css +1 -1
- package/uview-ui/components/u-tooltip/u-tooltip.vue +1 -0
- package/uview-ui/components/u-upload/style.css +7 -4
- package/uview-ui/components/u-upload/style.scss +6 -0
- package/uview-ui/components/u-upload/u-upload.vue +6 -1
- package/uview-ui/libs/config/config.js +2 -2
- package/uview-ui/libs/config/props/datetimePicker.js +1 -0
- package/uview-ui/libs/config/props/modal.js +2 -1
- package/uview-ui/libs/mixin/mixin.js +3 -6
- package/uview-ui/package.json +5 -8
- package/uview-plus/components/u-slider/nvue - /345/211/257/346/234/254.js" +0 -175
- package/uview-plus/libs/config/props/tag.js +0 -29
- package/uview-plus/libs/config/props/transition.js +0 -18
- /package/uview-plus/{libs/config/props → components/u-alert}/alert.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-avatar}/avatar.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-car-keyboard}/carKeyboard.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-cell}/cell.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-cell-group}/cellGroup.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-checkbox}/checkbox.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-circle-progress}/circleProgress.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-code}/code.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-code-input}/codeInput.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-col}/col.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-collapse}/collapse.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-count-down}/countDown.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-count-to}/countTo.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-divider}/divider.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-empty}/empty.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-gap}/gap.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-grid}/grid.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-grid-item}/gridItem.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-image}/image.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-index-anchor}/indexAnchor.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-keyboard}/keyboard.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-line}/line.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-line-progress}/lineProgress.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-list}/list.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-list-item}/listItem.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-loadmore}/loadmore.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-no-network}/noNetwork.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-notify}/notify.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-number-keyboard}/numberKeyboard.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-overlay}/overlay.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-parse}/parse.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-radio}/radio.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-rate}/rate.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-read-more}/readMore.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-row}/row.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-row-notice}/rowNotice.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-scroll-list}/scrollList.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-section}/section.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-skeleton}/skeleton.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-steps}/steps.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-steps-item}/stepsItem.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-sticky}/sticky.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-subsection}/subsection.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-swipe-action}/swipeAction.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-swiper-indicator}/swipterIndicator.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-switch}/switch.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-tabbar}/tabbar.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-tabbar-item}/tabbarItem.js +0 -0
- /package/uview-plus/{libs/config/props → components/u-textarea}/textarea.js +0 -0
|
@@ -1,90 +1,91 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import { defineMixin } from '../../libs/vue';
|
|
2
|
+
import defProps from '../../libs/config/props.js';
|
|
3
|
+
export const props = defineMixin({
|
|
3
4
|
props: {
|
|
4
5
|
// 图标类名
|
|
5
6
|
name: {
|
|
6
7
|
type: String,
|
|
7
|
-
default:
|
|
8
|
+
default: () => defProps.icon.name
|
|
8
9
|
},
|
|
9
10
|
// 图标颜色,可接受主题色
|
|
10
11
|
color: {
|
|
11
12
|
type: String,
|
|
12
|
-
default:
|
|
13
|
+
default: () => defProps.icon.color
|
|
13
14
|
},
|
|
14
15
|
// 字体大小,单位px
|
|
15
16
|
size: {
|
|
16
17
|
type: [String, Number],
|
|
17
|
-
default:
|
|
18
|
+
default: () => defProps.icon.size
|
|
18
19
|
},
|
|
19
20
|
// 是否显示粗体
|
|
20
21
|
bold: {
|
|
21
22
|
type: Boolean,
|
|
22
|
-
default:
|
|
23
|
+
default: () => defProps.icon.bold
|
|
23
24
|
},
|
|
24
25
|
// 点击图标的时候传递事件出去的index(用于区分点击了哪一个)
|
|
25
26
|
index: {
|
|
26
27
|
type: [String, Number],
|
|
27
|
-
default:
|
|
28
|
+
default: () => defProps.icon.index
|
|
28
29
|
},
|
|
29
30
|
// 触摸图标时的类名
|
|
30
31
|
hoverClass: {
|
|
31
32
|
type: String,
|
|
32
|
-
default:
|
|
33
|
+
default: () => defProps.icon.hoverClass
|
|
33
34
|
},
|
|
34
35
|
// 自定义扩展前缀,方便用户扩展自己的图标库
|
|
35
36
|
customPrefix: {
|
|
36
37
|
type: String,
|
|
37
|
-
default:
|
|
38
|
+
default: () => defProps.icon.customPrefix
|
|
38
39
|
},
|
|
39
40
|
// 图标右边或者下面的文字
|
|
40
41
|
label: {
|
|
41
42
|
type: [String, Number],
|
|
42
|
-
default:
|
|
43
|
+
default: () => defProps.icon.label
|
|
43
44
|
},
|
|
44
45
|
// label的位置,只能右边或者下边
|
|
45
46
|
labelPos: {
|
|
46
47
|
type: String,
|
|
47
|
-
default:
|
|
48
|
+
default: () => defProps.icon.labelPos
|
|
48
49
|
},
|
|
49
50
|
// label的大小
|
|
50
51
|
labelSize: {
|
|
51
52
|
type: [String, Number],
|
|
52
|
-
default:
|
|
53
|
+
default: () => defProps.icon.labelSize
|
|
53
54
|
},
|
|
54
55
|
// label的颜色
|
|
55
56
|
labelColor: {
|
|
56
57
|
type: String,
|
|
57
|
-
default:
|
|
58
|
+
default: () => defProps.icon.labelColor
|
|
58
59
|
},
|
|
59
60
|
// label与图标的距离
|
|
60
61
|
space: {
|
|
61
62
|
type: [String, Number],
|
|
62
|
-
default:
|
|
63
|
+
default: () => defProps.icon.space
|
|
63
64
|
},
|
|
64
65
|
// 图片的mode
|
|
65
66
|
imgMode: {
|
|
66
67
|
type: String,
|
|
67
|
-
default:
|
|
68
|
+
default: () => defProps.icon.imgMode
|
|
68
69
|
},
|
|
69
70
|
// 用于显示图片小图标时,图片的宽度
|
|
70
71
|
width: {
|
|
71
72
|
type: [String, Number],
|
|
72
|
-
default:
|
|
73
|
+
default: () => defProps.icon.width
|
|
73
74
|
},
|
|
74
75
|
// 用于显示图片小图标时,图片的高度
|
|
75
76
|
height: {
|
|
76
77
|
type: [String, Number],
|
|
77
|
-
default:
|
|
78
|
+
default: () => defProps.icon.height
|
|
78
79
|
},
|
|
79
80
|
// 用于解决某些情况下,让图标垂直居中的用途
|
|
80
81
|
top: {
|
|
81
82
|
type: [String, Number],
|
|
82
|
-
default:
|
|
83
|
+
default: () => defProps.icon.top
|
|
83
84
|
},
|
|
84
85
|
// 是否阻止事件传播
|
|
85
86
|
stop: {
|
|
86
87
|
type: Boolean,
|
|
87
|
-
default:
|
|
88
|
+
default: () => defProps.icon.stop
|
|
88
89
|
}
|
|
89
90
|
}
|
|
90
|
-
};
|
|
91
|
+
});
|
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
/* #ifndef APP-NVUE */
|
|
2
|
-
|
|
2
|
+
.u-empty,
|
|
3
|
+
.u-empty__wrap,
|
|
4
|
+
.u-tabs,
|
|
5
|
+
.u-tabs__wrapper,
|
|
6
|
+
.u-tabs__wrapper__scroll-view-wrapper,
|
|
7
|
+
.u-tabs__wrapper__scroll-view,
|
|
8
|
+
.u-tabs__wrapper__nav,
|
|
9
|
+
.u-tabs__wrapper__nav__line,
|
|
10
|
+
.up-empty,
|
|
11
|
+
.up-empty__wrap,
|
|
12
|
+
.up-tabs,
|
|
13
|
+
.up-tabs__wrapper,
|
|
14
|
+
.up-tabs__wrapper__scroll-view-wrapper,
|
|
15
|
+
.up-tabs__wrapper__scroll-view,
|
|
16
|
+
.up-tabs__wrapper__nav,
|
|
17
|
+
.up-tabs__wrapper__nav__line {
|
|
3
18
|
display: flex;
|
|
4
19
|
flex-direction: column;
|
|
5
20
|
flex-shrink: 0;
|
|
@@ -9,9 +24,9 @@ view, scroll-view, swiper-item {
|
|
|
9
24
|
align-content: flex-start;
|
|
10
25
|
}
|
|
11
26
|
/* #endif */
|
|
12
|
-
/* #
|
|
27
|
+
/* #ifdef MP-QQ || MP-TOUTIAO || MP-BAIDU || MP-KUAISHOU || MP-XHS */
|
|
13
28
|
@font-face {
|
|
14
|
-
font-family:
|
|
29
|
+
font-family: "uicon-iconfont";
|
|
15
30
|
src: url("https://at.alicdn.com/t/font_2225171_8kdcwk4po24.ttf") format("truetype");
|
|
16
31
|
}
|
|
17
32
|
/* #endif */
|
|
@@ -71,4 +86,4 @@ view, scroll-view, swiper-item {
|
|
|
71
86
|
/* #ifndef APP-NVUE */
|
|
72
87
|
line-height: 1;
|
|
73
88
|
/* #endif */
|
|
74
|
-
}
|
|
89
|
+
}
|
|
@@ -8,13 +8,12 @@ $u-icon-warning: $u-warning !default;
|
|
|
8
8
|
$u-icon-error: $u-error !default;
|
|
9
9
|
$u-icon-label-line-height: 1 !default;
|
|
10
10
|
|
|
11
|
-
/* #
|
|
12
|
-
//
|
|
11
|
+
/* #ifdef MP-QQ || MP-TOUTIAO || MP-BAIDU || MP-KUAISHOU || MP-XHS */
|
|
12
|
+
// 2025/04/09在App/微信/支付宝/鸿蒙元服务已改用uni.loadFontFace加载字体
|
|
13
13
|
@font-face {
|
|
14
14
|
font-family: 'uicon-iconfont';
|
|
15
15
|
src: url('https://at.alicdn.com/t/font_2225171_8kdcwk4po24.ttf') format('truetype');
|
|
16
16
|
}
|
|
17
|
-
|
|
18
17
|
/* #endif */
|
|
19
18
|
|
|
20
19
|
.u-icon {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<view class="u-icon" @tap="clickHandler" :class="['u-icon--' + labelPos]">
|
|
3
|
-
<image class="u-icon__img" v-if="isImg" :src="name" :mode="imgMode" :style="[imgStyle,
|
|
4
|
-
<text v-else class="u-icon__icon" :class="uClasses" :style="[iconStyle,
|
|
3
|
+
<image class="u-icon__img" v-if="isImg" :src="name" :mode="imgMode" :style="[imgStyle, addStyle(customStyle)]"></image>
|
|
4
|
+
<text v-else class="u-icon__icon" :class="uClasses" :style="[iconStyle, addStyle(customStyle)]" :hover-class="hoverClass">
|
|
5
5
|
{{ icon }}
|
|
6
6
|
</text>
|
|
7
7
|
<!-- 这里进行空字符串判断,如果仅仅是v-if="label",可能会出现传递0的时候,结果也无法显示 -->
|
|
@@ -10,11 +10,11 @@
|
|
|
10
10
|
class="u-icon__label"
|
|
11
11
|
:style="{
|
|
12
12
|
color: labelColor,
|
|
13
|
-
fontSize:
|
|
14
|
-
marginLeft: labelPos == 'right' ?
|
|
15
|
-
marginTop: labelPos == 'bottom' ?
|
|
16
|
-
marginRight: labelPos == 'left' ?
|
|
17
|
-
marginBottom: labelPos == 'top' ?
|
|
13
|
+
fontSize: addUnit(labelSize),
|
|
14
|
+
marginLeft: labelPos == 'right' ? addUnit(space) : 0,
|
|
15
|
+
marginTop: labelPos == 'bottom' ? addUnit(space) : 0,
|
|
16
|
+
marginRight: labelPos == 'left' ? addUnit(space) : 0,
|
|
17
|
+
marginBottom: labelPos == 'top' ? addUnit(space) : 0
|
|
18
18
|
}"
|
|
19
19
|
>
|
|
20
20
|
{{ label }}
|
|
@@ -22,21 +22,13 @@
|
|
|
22
22
|
</view>
|
|
23
23
|
</template>
|
|
24
24
|
<script>
|
|
25
|
-
// #ifdef APP-NVUE
|
|
26
|
-
// nvue通过weex的dom模块引入字体,相关文档地址如下:
|
|
27
|
-
// https://weex.apache.org/zh/docs/modules/dom.html#addrule
|
|
28
|
-
const fontUrl = 'https://at.alicdn.com/t/font_2225171_8kdcwk4po24.ttf';
|
|
29
|
-
const domModule = weex.requireModule('dom');
|
|
30
|
-
domModule.addRule('fontFace', {
|
|
31
|
-
fontFamily: 'uicon-iconfont',
|
|
32
|
-
src: `url('${fontUrl}')`
|
|
33
|
-
});
|
|
34
|
-
// #endif
|
|
35
25
|
// 引入图标名称,已经对应的unicode
|
|
36
26
|
import icons from './icons';
|
|
37
|
-
import props from './props
|
|
38
|
-
import
|
|
39
|
-
import
|
|
27
|
+
import { props } from './props';
|
|
28
|
+
import config from '../../libs/config/config';
|
|
29
|
+
import { mpMixin } from '../../libs/mixin/mpMixin';
|
|
30
|
+
import { mixin } from '../../libs/mixin/mixin';
|
|
31
|
+
import { addUnit, addStyle } from '../../libs/function/index';
|
|
40
32
|
/**
|
|
41
33
|
* icon 图标
|
|
42
34
|
* @description 基于字体的图标集,包含了大多数常见场景的图标。
|
|
@@ -65,6 +57,55 @@ import mixin from '../../libs/mixin/mixin.js';
|
|
|
65
57
|
*/
|
|
66
58
|
export default {
|
|
67
59
|
name: 'u-icon',
|
|
60
|
+
beforeCreate() {
|
|
61
|
+
// #ifdef APP-NVUE
|
|
62
|
+
// nvue通过weex的dom模块引入字体,相关文档地址如下:
|
|
63
|
+
// https://weex.apache.org/zh/docs/modules/dom.html#addrule
|
|
64
|
+
const domModule = weex.requireModule('dom');
|
|
65
|
+
domModule.addRule('fontFace', {
|
|
66
|
+
fontFamily: 'uicon-iconfont',
|
|
67
|
+
src: `url('${config.iconUrl}')`
|
|
68
|
+
});
|
|
69
|
+
if (config.customIcon.family) {
|
|
70
|
+
domModule.addRule('fontFace', {
|
|
71
|
+
fontFamily: config.customIcon.family,
|
|
72
|
+
src: `url('${config.customIcon.url}')`
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
// #endif
|
|
76
|
+
// #ifdef APP || H5 || MP-WEIXIN || MP-ALIPAY
|
|
77
|
+
uni.loadFontFace({
|
|
78
|
+
family: 'uicon-iconfont',
|
|
79
|
+
source: 'url("' + config.iconUrl + '")',
|
|
80
|
+
success() {
|
|
81
|
+
// console.log('内置字体图标加载成功');
|
|
82
|
+
},
|
|
83
|
+
fail() {
|
|
84
|
+
console.error('内置字体图标加载出错');
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
if (config.customIcon.family) {
|
|
88
|
+
uni.loadFontFace({
|
|
89
|
+
family: config.customIcon.family,
|
|
90
|
+
source: 'url("' + config.customIcon.url + '")',
|
|
91
|
+
success() {
|
|
92
|
+
// console.log('扩展字体图标加载成功');
|
|
93
|
+
},
|
|
94
|
+
fail() {
|
|
95
|
+
console.error('扩展字体图标加载出错');
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
// #endif
|
|
100
|
+
// #ifdef APP-NVUE
|
|
101
|
+
if (this.customFontFamily) {
|
|
102
|
+
domModule.addRule('fontFace', {
|
|
103
|
+
fontFamily: `${this.customPrefix}-${this.customFontFamily}`,
|
|
104
|
+
src: `url('${this.customFontUrl}')`
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
// #endif
|
|
108
|
+
},
|
|
68
109
|
data() {
|
|
69
110
|
return {};
|
|
70
111
|
},
|
|
@@ -74,14 +115,15 @@ export default {
|
|
|
74
115
|
uClasses() {
|
|
75
116
|
let classes = [];
|
|
76
117
|
classes.push(this.customPrefix + '-' + this.name);
|
|
77
|
-
//
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
118
|
+
// uview-plus内置图标类名为u-iconfont
|
|
119
|
+
if (this.customPrefix == 'uicon') {
|
|
120
|
+
classes.push('u-iconfont');
|
|
121
|
+
} else {
|
|
122
|
+
// 不能缺少这一步,否则自定义图标会无效
|
|
123
|
+
classes.push(this.customPrefix);
|
|
124
|
+
}
|
|
83
125
|
// 主题色,通过类配置
|
|
84
|
-
if (this.color &&
|
|
126
|
+
if (this.color && config.type.includes(this.color)) classes.push('u-icon__icon--' + this.color);
|
|
85
127
|
// 阿里,头条,百度小程序通过数组绑定类名时,无法直接使用[a, b, c]的形式,否则无法识别
|
|
86
128
|
// 故需将其拆成一个字符串的形式,通过空格隔开各个类名
|
|
87
129
|
//#ifdef MP-ALIPAY || MP-TOUTIAO || MP-BAIDU
|
|
@@ -92,14 +134,17 @@ export default {
|
|
|
92
134
|
iconStyle() {
|
|
93
135
|
let style = {};
|
|
94
136
|
style = {
|
|
95
|
-
fontSize:
|
|
96
|
-
lineHeight:
|
|
137
|
+
fontSize: addUnit(this.size),
|
|
138
|
+
lineHeight: addUnit(this.size),
|
|
97
139
|
fontWeight: this.bold ? 'bold' : 'normal',
|
|
98
140
|
// 某些特殊情况需要设置一个到顶部的距离,才能更好的垂直居中
|
|
99
|
-
top:
|
|
141
|
+
top: addUnit(this.top)
|
|
100
142
|
};
|
|
143
|
+
if (this.customPrefix !== 'uicon') {
|
|
144
|
+
style.fontFamily = this.customPrefix;
|
|
145
|
+
}
|
|
101
146
|
// 非主题色值时,才当作颜色值
|
|
102
|
-
if (this.color && !
|
|
147
|
+
if (this.color && !config.type.includes(this.color)) style.color = this.color;
|
|
103
148
|
return style;
|
|
104
149
|
},
|
|
105
150
|
// 判断传入的name属性,是否图片路径,只要带有"/"均认为是图片形式
|
|
@@ -109,19 +154,25 @@ export default {
|
|
|
109
154
|
imgStyle() {
|
|
110
155
|
let style = {};
|
|
111
156
|
// 如果设置width和height属性,则优先使用,否则使用size属性
|
|
112
|
-
style.width = this.width ?
|
|
113
|
-
style.height = this.height ?
|
|
157
|
+
style.width = this.width ? addUnit(this.width) : addUnit(this.size);
|
|
158
|
+
style.height = this.height ? addUnit(this.height) : addUnit(this.size);
|
|
114
159
|
return style;
|
|
115
160
|
},
|
|
116
161
|
// 通过图标名,查找对应的图标
|
|
117
162
|
icon() {
|
|
163
|
+
// 使用自定义图标的时候页面上会把name属性也展示出来,所以在这里处理一下
|
|
164
|
+
if (this.customPrefix !== 'uicon') {
|
|
165
|
+
return config.customIcons[this.name] || this.name;
|
|
166
|
+
}
|
|
118
167
|
// 如果内置的图标中找不到对应的图标,就直接返回name值,因为用户可能传入的是unicode代码
|
|
119
168
|
return icons['uicon-' + this.name] || this.name;
|
|
120
169
|
}
|
|
121
170
|
},
|
|
122
171
|
methods: {
|
|
172
|
+
addStyle,
|
|
173
|
+
addUnit,
|
|
123
174
|
clickHandler(e) {
|
|
124
|
-
this.$emit('click', this.index);
|
|
175
|
+
this.$emit('click', this.index, e);
|
|
125
176
|
// 是否阻止事件冒泡
|
|
126
177
|
this.stop && this.preventEvent(e);
|
|
127
178
|
}
|
|
@@ -1,85 +1,86 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import { defineMixin } from '../../libs/vue';
|
|
2
|
+
import defProps from '../../libs/config/props.js';
|
|
3
|
+
export const props = defineMixin({
|
|
3
4
|
props: {
|
|
4
5
|
// 图片地址
|
|
5
6
|
src: {
|
|
6
7
|
type: String,
|
|
7
|
-
default:
|
|
8
|
+
default: () => defProps.image.src
|
|
8
9
|
},
|
|
9
10
|
// 裁剪模式
|
|
10
11
|
mode: {
|
|
11
12
|
type: String,
|
|
12
|
-
default:
|
|
13
|
+
default: () => defProps.image.mode
|
|
13
14
|
},
|
|
14
15
|
// 宽度,单位任意
|
|
15
16
|
width: {
|
|
16
17
|
type: [String, Number],
|
|
17
|
-
default:
|
|
18
|
+
default: () => defProps.image.width
|
|
18
19
|
},
|
|
19
20
|
// 高度,单位任意
|
|
20
21
|
height: {
|
|
21
22
|
type: [String, Number],
|
|
22
|
-
default:
|
|
23
|
+
default: () => defProps.image.height
|
|
23
24
|
},
|
|
24
25
|
// 图片形状,circle-圆形,square-方形
|
|
25
26
|
shape: {
|
|
26
27
|
type: String,
|
|
27
|
-
default:
|
|
28
|
+
default: () => defProps.image.shape
|
|
28
29
|
},
|
|
29
30
|
// 圆角,单位任意
|
|
30
31
|
radius: {
|
|
31
32
|
type: [String, Number],
|
|
32
|
-
default:
|
|
33
|
+
default: () => defProps.image.radius
|
|
33
34
|
},
|
|
34
35
|
// 是否懒加载,微信小程序、App、百度小程序、字节跳动小程序
|
|
35
36
|
lazyLoad: {
|
|
36
37
|
type: Boolean,
|
|
37
|
-
default:
|
|
38
|
+
default: () => defProps.image.lazyLoad
|
|
38
39
|
},
|
|
39
40
|
// 开启长按图片显示识别微信小程序码菜单
|
|
40
41
|
showMenuByLongpress: {
|
|
41
42
|
type: Boolean,
|
|
42
|
-
default:
|
|
43
|
+
default: () => defProps.image.showMenuByLongpress
|
|
43
44
|
},
|
|
44
45
|
// 加载中的图标,或者小图片
|
|
45
46
|
loadingIcon: {
|
|
46
47
|
type: String,
|
|
47
|
-
default:
|
|
48
|
+
default: () => defProps.image.loadingIcon
|
|
48
49
|
},
|
|
49
50
|
// 加载失败的图标,或者小图片
|
|
50
51
|
errorIcon: {
|
|
51
52
|
type: String,
|
|
52
|
-
default:
|
|
53
|
+
default: () => defProps.image.errorIcon
|
|
53
54
|
},
|
|
54
55
|
// 是否显示加载中的图标或者自定义的slot
|
|
55
56
|
showLoading: {
|
|
56
57
|
type: Boolean,
|
|
57
|
-
default:
|
|
58
|
+
default: () => defProps.image.showLoading
|
|
58
59
|
},
|
|
59
60
|
// 是否显示加载错误的图标或者自定义的slot
|
|
60
61
|
showError: {
|
|
61
62
|
type: Boolean,
|
|
62
|
-
default:
|
|
63
|
+
default: () => defProps.image.showError
|
|
63
64
|
},
|
|
64
65
|
// 是否需要淡入效果
|
|
65
66
|
fade: {
|
|
66
67
|
type: Boolean,
|
|
67
|
-
default:
|
|
68
|
+
default: () => defProps.image.fade
|
|
68
69
|
},
|
|
69
70
|
// 只支持网络资源,只对微信小程序有效
|
|
70
71
|
webp: {
|
|
71
72
|
type: Boolean,
|
|
72
|
-
default:
|
|
73
|
+
default: () => defProps.image.webp
|
|
73
74
|
},
|
|
74
75
|
// 过渡时间,单位ms
|
|
75
76
|
duration: {
|
|
76
77
|
type: [String, Number],
|
|
77
|
-
default:
|
|
78
|
+
default: () => defProps.image.duration
|
|
78
79
|
},
|
|
79
80
|
// 背景颜色,用于深色页面加载图片时,为了和背景色融合
|
|
80
81
|
bgColor: {
|
|
81
82
|
type: String,
|
|
82
|
-
default:
|
|
83
|
+
default: () => defProps.image.bgColor
|
|
83
84
|
}
|
|
84
85
|
}
|
|
85
|
-
};
|
|
86
|
+
});
|
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
/* #ifndef APP-NVUE */
|
|
2
|
-
|
|
2
|
+
.u-empty,
|
|
3
|
+
.u-empty__wrap,
|
|
4
|
+
.u-tabs,
|
|
5
|
+
.u-tabs__wrapper,
|
|
6
|
+
.u-tabs__wrapper__scroll-view-wrapper,
|
|
7
|
+
.u-tabs__wrapper__scroll-view,
|
|
8
|
+
.u-tabs__wrapper__nav,
|
|
9
|
+
.u-tabs__wrapper__nav__line,
|
|
10
|
+
.up-empty,
|
|
11
|
+
.up-empty__wrap,
|
|
12
|
+
.up-tabs,
|
|
13
|
+
.up-tabs__wrapper,
|
|
14
|
+
.up-tabs__wrapper__scroll-view-wrapper,
|
|
15
|
+
.up-tabs__wrapper__scroll-view,
|
|
16
|
+
.up-tabs__wrapper__nav,
|
|
17
|
+
.up-tabs__wrapper__nav__line {
|
|
3
18
|
display: flex;
|
|
4
19
|
flex-direction: column;
|
|
5
20
|
flex-shrink: 0;
|
|
@@ -32,4 +47,4 @@ view, scroll-view, swiper-item {
|
|
|
32
47
|
background-color: var(--u-bg-color);
|
|
33
48
|
color: var(--u-tips-color);
|
|
34
49
|
font-size: 46rpx;
|
|
35
|
-
}
|
|
50
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<u-transition mode="fade" :show="show" :duration="fade ? 1000 : 0">
|
|
3
|
-
<view class="u-image" @tap="onClick" :style="[wrapStyle, backgroundStyle]">
|
|
2
|
+
<u-transition mode="fade" :show="show" :style="transStyle" :duration="fade ? 1000 : 0">
|
|
3
|
+
<view class="u-image box-border" @tap="onClick" :style="[wrapStyle, backgroundStyle]">
|
|
4
4
|
<image
|
|
5
5
|
v-if="!isError"
|
|
6
6
|
:src="src"
|
|
@@ -11,49 +11,48 @@
|
|
|
11
11
|
:lazy-load="lazyLoad"
|
|
12
12
|
class="u-image__image"
|
|
13
13
|
:style="{
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
width: addUnit(width),
|
|
15
|
+
height: addUnit(height),
|
|
16
|
+
borderRadius: shape == 'circle' ? '10000px' : addUnit(radius)
|
|
17
17
|
}"
|
|
18
18
|
></image>
|
|
19
19
|
<view
|
|
20
20
|
v-if="showLoading && loading"
|
|
21
21
|
class="u-image__loading"
|
|
22
22
|
:style="{
|
|
23
|
-
borderRadius: shape == 'circle' ? '50%' :
|
|
23
|
+
borderRadius: shape == 'circle' ? '50%' : addUnit(radius),
|
|
24
24
|
backgroundColor: this.bgColor,
|
|
25
|
-
width:
|
|
26
|
-
height:
|
|
25
|
+
width: addUnit(width),
|
|
26
|
+
height: addUnit(height)
|
|
27
27
|
}"
|
|
28
28
|
>
|
|
29
29
|
<slot name="loading">
|
|
30
|
-
<u-icon :name="loadingIcon"
|
|
30
|
+
<u-icon :name="loadingIcon"></u-icon>
|
|
31
31
|
</slot>
|
|
32
32
|
</view>
|
|
33
33
|
<view
|
|
34
34
|
v-if="showError && isError && !loading"
|
|
35
35
|
class="u-image__error"
|
|
36
36
|
:style="{
|
|
37
|
-
borderRadius: shape == 'circle' ? '50%' :
|
|
38
|
-
width: $u.addUnit(width),
|
|
39
|
-
height: $u.addUnit(height)
|
|
37
|
+
borderRadius: shape == 'circle' ? '50%' : addUnit(radius)
|
|
40
38
|
}"
|
|
41
39
|
>
|
|
42
40
|
<slot name="error">
|
|
43
|
-
<u-icon :name="errorIcon"
|
|
41
|
+
<u-icon :name="errorIcon"></u-icon>
|
|
44
42
|
</slot>
|
|
45
43
|
</view>
|
|
46
44
|
</view>
|
|
47
45
|
</u-transition>
|
|
48
46
|
</template>
|
|
49
47
|
<script>
|
|
50
|
-
import props from './props
|
|
51
|
-
import mpMixin from '../../libs/mixin/mpMixin
|
|
52
|
-
import mixin from '../../libs/mixin/mixin
|
|
48
|
+
import { props } from './props';
|
|
49
|
+
import { mpMixin } from '../../libs/mixin/mpMixin';
|
|
50
|
+
import { mixin } from '../../libs/mixin/mixin';
|
|
51
|
+
import { addUnit, addStyle, deepMerge } from '../../libs/function/index';
|
|
53
52
|
/**
|
|
54
53
|
* Image 图片
|
|
55
54
|
* @description 此组件为uni-app的image组件的加强版,在继承了原有功能外,还支持淡入动画、加载中、加载失败提示、圆角值和形状等。
|
|
56
|
-
* @tutorial https://
|
|
55
|
+
* @tutorial https://uview-plus.jiangruyi.com/components/image.html
|
|
57
56
|
* @property {String} src 图片地址
|
|
58
57
|
* @property {String} mode 裁剪模式,见官网说明 (默认 'aspectFill' )
|
|
59
58
|
* @property {String | Number} width 宽度,单位任意,如果为数值,则为px单位 (默认 '300' )
|
|
@@ -110,13 +109,48 @@ export default {
|
|
|
110
109
|
}
|
|
111
110
|
},
|
|
112
111
|
computed: {
|
|
112
|
+
transStyle() {
|
|
113
|
+
let style = {};
|
|
114
|
+
// 通过调用addUnit()方法,如果有单位,如百分比,px单位等,直接返回,如果是纯粹的数值,则加上rpx单位
|
|
115
|
+
// #ifdef APP-NVUE
|
|
116
|
+
style.width = addUnit(this.width);
|
|
117
|
+
style.height = addUnit(this.height);
|
|
118
|
+
// #endif
|
|
119
|
+
// #ifndef APP-NVUE
|
|
120
|
+
if (this.loading || this.isError || this.width == '100%' || this.mode != 'heightFix') {
|
|
121
|
+
style.width = addUnit(this.width);
|
|
122
|
+
} else {
|
|
123
|
+
style.width = 'fit-content';
|
|
124
|
+
}
|
|
125
|
+
if (this.loading || this.isError || this.height == '100%' || this.mode != 'widthFix') {
|
|
126
|
+
style.height = addUnit(this.height);
|
|
127
|
+
} else {
|
|
128
|
+
style.height = 'fit-content';
|
|
129
|
+
}
|
|
130
|
+
// #endif
|
|
131
|
+
return style;
|
|
132
|
+
},
|
|
113
133
|
wrapStyle() {
|
|
114
134
|
let style = {};
|
|
115
135
|
// 通过调用addUnit()方法,如果有单位,如百分比,px单位等,直接返回,如果是纯粹的数值,则加上rpx单位
|
|
116
|
-
|
|
117
|
-
style.
|
|
136
|
+
// #ifdef APP-NVUE
|
|
137
|
+
style.width = addUnit(this.width);
|
|
138
|
+
style.height = addUnit(this.height);
|
|
139
|
+
// #endif
|
|
140
|
+
// #ifndef APP-NVUE
|
|
141
|
+
if (this.loading || this.isError || this.width == '100%' || this.mode != 'heightFix') {
|
|
142
|
+
style.width = addUnit(this.width);
|
|
143
|
+
} else {
|
|
144
|
+
style.width = 'fit-content';
|
|
145
|
+
}
|
|
146
|
+
if (this.loading || this.isError || this.height == '100%' || this.mode != 'widthFix') {
|
|
147
|
+
style.height = addUnit(this.height);
|
|
148
|
+
} else {
|
|
149
|
+
style.height = 'fit-content';
|
|
150
|
+
}
|
|
151
|
+
// #endif
|
|
118
152
|
// 如果是显示圆形,设置一个很多的半径值即可
|
|
119
|
-
style.borderRadius = this.shape == 'circle' ? '10000px' :
|
|
153
|
+
style.borderRadius = this.shape == 'circle' ? '10000px' : addUnit(this.radius);
|
|
120
154
|
// 如果设置圆角,必须要有hidden,否则可能圆角无效
|
|
121
155
|
style.overflow = this.radius > 0 ? 'hidden' : 'visible';
|
|
122
156
|
// if (this.fade) {
|
|
@@ -126,7 +160,7 @@ export default {
|
|
|
126
160
|
// style.transitionTimingFunction = 'ease-in-out'
|
|
127
161
|
// style.transitionProperty = 'opacity'
|
|
128
162
|
// }
|
|
129
|
-
return
|
|
163
|
+
return deepMerge(style, addStyle(this.customStyle));
|
|
130
164
|
}
|
|
131
165
|
},
|
|
132
166
|
mounted() {
|
|
@@ -134,9 +168,10 @@ export default {
|
|
|
134
168
|
},
|
|
135
169
|
emits: ['click', 'error', 'load'],
|
|
136
170
|
methods: {
|
|
171
|
+
addUnit,
|
|
137
172
|
// 点击图片
|
|
138
|
-
onClick() {
|
|
139
|
-
this.$emit('click');
|
|
173
|
+
onClick(e) {
|
|
174
|
+
this.$emit('click', e);
|
|
140
175
|
},
|
|
141
176
|
// 图片加载失败
|
|
142
177
|
onErrorHandler(err) {
|
|
@@ -171,7 +206,7 @@ export default {
|
|
|
171
206
|
removeBgColor() {
|
|
172
207
|
// 淡入动画过渡完成后,将背景设置为透明色,否则png图片会看到灰色的背景
|
|
173
208
|
this.backgroundStyle = {
|
|
174
|
-
backgroundColor: '
|
|
209
|
+
backgroundColor: this.bgColor || '#ffffff'
|
|
175
210
|
};
|
|
176
211
|
}
|
|
177
212
|
}
|