Panel 面板
Panel 面板,常用的布局组件。
# 支持平台
| App(vue) | App(nvue) | H5 | 小程序 |
|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ |
# 代码演示
部分示例演示,完整使用请参考文档API。
# 基础使用
通过 panelData 属性设置面板数据。
<wui-panel :panelData="panelData"></wui-panel>
const panelData = ref({
src: '/static/images/common/img_logo.png',
title: '基础使用',
desc: 'wlyy组件库,是基于uni-app开发的一款轻量、全面可靠的跨平台移动端组件库。'
})
# 列表,带附加信息
通过 panelData 属性设置面板数据,marginTop 属性设置 margin-top 值,size 属性设置列表标题字体大小。
<wui-panel :panelData="panelData" :marginTop="24" :size="32"></wui-panel>
const panelData = ref({
head: '附加信息',
list: [{
title: 'wlyyui组件库',
desc: 'wlyyui组件库,是基于uni-app开发的一款轻量、全面可靠的跨平台移动端组件库。',
source: '开源中国',
time: '2023-07-09'
}, {
title: 'wlyyui跨平台UI组件库',
desc: 'wlyyui组件库,是基于uni-app开发的一款轻量、全面可靠的跨平台移动端组件库。',
source: 'GitHub',
time: '2023-07-09',
extra: 'Apache License 2.0'
}]
})
# Slots
| 名称 | 说明 |
|---|---|
| default | 标签内显示内容 |
# Props
| 属性名 | 类型 | 说明 | 默认值 | 平台差异说明 |
|---|---|---|---|---|
| panelData | Object | 面板数据,数据格式参考下方详细介绍,键名可通过 fields属性配置 | { } | - |
| fields | Object | 面板数据源键名(key),具体查看下方详细介绍 | { } | - |
| background | String | 面板背景色 | #fff | 非nvue下默认值为空,可通过css变量(--wui-bg-color)改变背景色 |
| highlight | Boolean | 是否有点击效果 | true | - |
| flexStart | Boolean | 面板列表图片与内容是否位于容器的开头对齐,默认居中对齐 | false | - |
| marginTop | Number, String | 面板margin-top值 | 0 | - |
| marginBottom | Number, String | 面板margin-bottom值 | 0 | - |
| padding | Number, String | 面板内容左右padding值 | 32 | - |
| hdBorder | Boolean | 面板头部是否需要底部border | true | - |
| hdLeft | Number, String | 面板头部底部border left值,单位rpx | 32 | - |
| hdRight | Number, String | 面板头部底部border right值,单位rpx | 0 | - |
| hdBackground | String | 面板头部背景色 | #fff | - |
| headSize | Number, String | 面板头部字体大小,单位rpx | 32 | - |
| headColor | String | 面板头部字体颜色 | #181818 | 非nvue下默认值为空,可通过css变量(--wui-color-title)改变字体颜色 |
| bdBorder | Boolean | 面板内容列表是否需要底部border | true | - |
| bdLeft | Number, String | 面板内容列表底部border left值,单位rpx | 32 | - |
| bdRight | Number, String | 面板内容列表底部border right值,单位rpx | 0 | - |
| width | Number, String | 面板内容列表图片宽度,单位rpx | 120 | - |
| height | Number, String | 面板内容列表图片高度,单位rpx | 120 | - |
| imgRadius | Number, String | 面板内容列表图片圆角值,单位rpx | 0 | - |
| boxRadius | Number, String | 容器圆角值,单位rpx | 0 | - |
| size | Number, String | 面板内容列表标题字体大小,单位rpx | 32 | - |
| color | String | 面板内容列表标题字体颜色 | #181818 | 非nvue下默认值为空,可通过css变量(--wui-color-title)改变字体颜色 |
| fontWeight | Number, String | 面板内容列表标题字体粗细 | normal | - |
| descSize | Number, String | 面板内容列表描述字体大小,单位rpx | 28 | - |
| descColor | String | 面板内容列表描述字体颜色 | #7F7F7F | 非nvue下默认值为空,可通过css变量(--wui-color-subtitle)改变字体颜色 |
| infoSize | Number, String | 面板内容列表附加信息字体大小,单位rpx | 24 | - |
| infoColor | String | 面板内容列表附加信息字体颜色 | #b2b2b2 | 非nvue下默认值为空,可通过css变量(--wui-color-label)改变字体颜色 |
| isBorder | Boolean | 是否需要面板外层上下border | true | - |
| borderColor | String | 面板所有border颜色值 | #eee | 非nvue下默认值为空,可通过css变量(--wui-color-border)改变border颜色 |
# panelData数据格式详细说明
panelData 为Object类型,内部数据格式有两种类型,以下为约定属性,约定键名可通过 fields 属性配置,可自定义加入其他属性一并传入,点击列表时,随点击事件回传。
//第一种数据格式,约定属性如下:
const panelData = ref(
{
//head标题,可选
head: '带标题的列表',
//列表图片src,可选
src: '/static/images/common/XXXXXXX.png',
//列表标题,可选
title: 'wlyyui跨平台UI组件库',
//列表描述,可选
desc: 'wlyyui组件库,是基于uni-app开发的一款轻量、全面可靠的跨平台移动端组件库。',
//列表附加信息-来源,可选
source: 'GitHub',
//列表附加信息-时间,可选
time: '2023-07-09',
//列表附加信息-其他,可选
extra: 'Apache License 2.0'
}
)
//第二种数据格式,约定属性如下:
const panelData=ref({
//head标题,可选
head: '带标题的列表',
//列表数据
list:[{
//列表图片src,可选
src: '/static/images/common/XXXXXXX.png',
//列表标题,可选
title: 'wlyyui跨平台UI组件库',
//列表描述,可选
desc: 'wlyyui组件库,是基于uni-app开发的一款轻量、全面可靠的跨平台移动端组件库。',
//列表附加信息-来源,可选
source: 'GitHub',
//列表附加信息-时间,可选
time: '2023-07-09',
//列表附加信息-其他,可选
extra: 'Apache License 2.0'
},{
//列表图片src,可选
src: '/static/images/common/XXXXXXX.png',
//列表标题,可选
title: 'wlyyui跨平台UI组件库',
//列表描述,可选
desc: 'wlyyui组件库,是基于uni-app开发的一款轻量、全面可靠的跨平台移动端组件库。',
//列表附加信息-来源,可选
source: 'GitHub',
//列表附加信息-时间,可选
time: '2023-07-09',
//列表附加信息-其他,可选
extra: 'Apache License 2.0'
}]
})