# Album 相册
本组件提供一个类似相册的功能,让开发者开发起来更加得心应手。减少重复的模板代码
# 平台差异说明
App(vue) | App(nvue) | H5 | 小程序 |
---|---|---|---|
√ | √ | √ | √ |
# 基本使用
- 通过
urls
设置相册的图片地址,搭配 image 等做出更棒的效果!
<template> <view class="u-page"> <view class="u-demo-block"> <text class="u-demo-block__title">多图模式</text> <view class="u-demo-block__content"> <view class="album"> <view class="album__avatar"> <image src="/static/uview/common/logo.png" mode="" style="width: 32px;height: 32px;" ></image> </view> <view class="album__content"> <u--text text="uView UI" type="primary" bold size="17"></u--text> <u--text margin="0 0 8px 0" text="全面的组件和便捷的工具会让您信手拈来,如鱼得水" ></u--text> <u-album :urls="urls1" keyName="src2"></u-album> </view> </view> </view> </view> </view> </template> <script> export default { data() { return { albumWidth: 0, urls1: [ { src2: "https://xxx.com/album/1.jpg", }, ], }; }, }; </script> <style lang="scss"> .album { @include flex; align-items: flex-start; &__avatar { background-color: $u-bg-color; padding: 5px; border-radius: 3px; } &__content { margin-left: 10px; flex: 1; } } </style>
✅ Copy success!
# 多图模式
- 通过
urls
传入更多的图片地址形成图片列表
<template> <view class="u-page"> <view class="u-demo-block"> <text class="u-demo-block__title">多图模式</text> <view class="u-demo-block__content"> <view class="album"> <view class="album__avatar"> <image src="/static/uview/common/logo.png" mode="" style="width: 32px;height: 32px;" ></image> </view> <view class="album__content"> <u--text text="uView UI" type="primary" bold size="17"></u--text> <u--text margin="0 0 8px 0" text="全面的组件和便捷的工具会让您信手拈来,如鱼得水" ></u--text> <u-album :urls="urls2"></u-album> </view> </view> </view> </view> </view> </template> <script> export default { data() { return { albumWidth: 0, urls2: [ "https://xxx.com/album/1.jpg", "https://xxx.com/album/2.jpg", "https://xxx.com/album/3.jpg", "https://xxx.com/album/4.jpg", "https://xxx.com/album/5.jpg", "https://xxx.com/album/6.jpg", "https://xxx.com/album/7.jpg", "https://xxx.com/album/8.jpg", "https://xxx.com/album/9.jpg", "https://xxx.com/album/10.jpg", ], }; }, }; </script> <style lang="scss"> .album { @include flex; align-items: flex-start; &__avatar { background-color: $u-bg-color; padding: 5px; border-radius: 3px; } &__content { margin-left: 10px; flex: 1; } } </style>
✅ Copy success!
# 此页面源代码地址
# API
# Props
参数 | 说明 | 类型 | 默认值 | 可选值 |
---|---|---|---|---|
urls | 图片地址列表 支持 Array<String> | Array<Object>形式 | Array | - | - |
keyName | 指定从数组的对象元素中读取哪个属性作为图片地址 | String | - | - |
singleSize | 单图时,图片长边的长度 | String | Number | 180 | - |
multipleSize | 多图时,图片边长 | String | Number | 70 | - |
space | 多图时,图片水平和垂直之间的间隔 | String | Number | 6 | - |
singleMode | 单图时,图片缩放裁剪的模式 | String | scaleToFill | - |
multipleMode | 多图时,图片缩放裁剪的模式 | String | aspectFill | - |
maxCount | 最多展示的图片数量,超出时最后一个位置将会显示剩余图片数量 | String | Number | 9 | - |
previewFullImage | 是否可以预览图片 | Boolean | true | false |
rowCount | 每行展示图片数量,如设置,singleSize 和 multipleSize 将会无效 | String | Number | 3 | - |
showMore | 超出 maxCount 时是否显示查看更多的提示 | Boolean | true | false |
# Event
事件名 | 说明 | 回调参数 |
---|---|---|
albumWidth | 某些特殊的情况下,需要让文字与相册的宽度相等,这里事件的形式对外发送 | width |
← Slider 滑动选择器 List 列表 →