# una-banner **Repository Path**: una_0903/una-banner ## Basic Information - **Project Name**: una-banner - **Description**: 基于 Vue3 组合式 API,Uniapp开发的插件 支持图片/视频混合轮播 可配置自动播放、循环播放、播放速度 自定义指示器样式(位置、颜色、大小) 支持点击事件回调与页面跳转 适配微信/支付宝/抖音/百度等多端小程序 - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-03-10 - **Last Updated**: 2026-03-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # una-banner 基于 `uni-app` + `Vue3 ``` ## Props | 名称 | 类型 | 默认值 | 说明 | | --- | --- | --- | --- | | list | Array | [] | 轮播数据 | | width | String \| Number | 100% | Banner 宽度 | | height | String \| Number | 360rpx | Banner 高度 | | backgroundColor | String | #E8E8E8 | Banner 背景色 | | isShowMasker | Boolean | true | 是否显示固定渐变蒙层 | | showDot | Boolean | true | 是否显示 dot | | dotWidth | String \| Number | 24rpx | dot 宽度 | | dotHeight | String \| Number | 6rpx | dot 高度 | | dotRadius | String \| Number | 9999rpx | dot 圆角 | | dotGap | String \| Number | 10rpx | dot 间距 | | dotActiveColor | String | #FFFFFF | active dot 颜色 | | dotColor | String | rgba(255, 255, 255, 0.45) | 非 active dot 颜色 | | titleColor | String | #FFFFFF | 标题颜色 | | subTitleKey | String | subTitle | 右下角副标题字段 | | subTitleColor | String | #FFFFFF | 副标题颜色 | | subTitleFontSize | String \| Number | 24rpx | 副标题字号 | | idKey | String | id | 列表唯一键字段 | | imageKey | String | image | 资源地址字段(图片/视频) | | titleKey | String | title | 标题字段 | | mediaTypeKey | String | type | 资源类型字段,值可为 image/video | | videoObjectFit | String | contain | 视频适配方式 | | videoControls | Boolean | false | 视频控件 | | videoAutoplay | Boolean | false | 视频自动播放 | | videoLoop | Boolean | true | 视频循环 | | videoMuted | Boolean | true | 视频静音 | | videoShowCenterPlayBtn | Boolean | true | 视频中心播放按钮 | | current | Number | 0 | 当前索引(支持 `v-model:current`) | | autoplay | Boolean | true | 自动播放 | | interval | Number | 3000 | 自动切换间隔 | | duration | Number | 500 | 动画时长 | | circular | Boolean | true | 是否衔接滑动 | > 说明1:若未传 `type`,组件会根据资源地址后缀自动判断是否视频(如 `.mp4/.mov/.webm/.m3u8`)。 > 说明2:蒙层样式固定为 `linear-gradient(180deg, rgba(231, 231, 231, 0) 40%, rgba(0, 0, 0, 0.4) 91%)`,通过 `isShowMasker` 控制显隐。 ## Events - `change(index)`:轮播切换 - `update:current(index)`:双向绑定回调 - `click({ item, index })`:点击当前项