账户中心 退出系统
5.0 版本 3.0 版本
使用手册 模板中心 账户中心 合作 · 服务
快速开始
框架介绍版权要求
更新日志
常见问题
框架部署目录结构
版本差别V5 vs V3
皮肤说明
nvue 说明
数据转换格式问题
页面布局 ( 13 )
页面组件 独创 · 好用
全屏加载 + 挂件
自定义头部返回 · 主页
自定义头部动态变化
自定义头部双击回顶部
返回顶部组件组件模式
自定义底部详情模式
自定义 tabbar凸出按钮
吸顶元素插槽实现
动态吸顶逻辑演示
iPhone 底部适配自动适配
小程序胶囊按钮躲避
下拉选择筛选 · 排序
框架基础 ( 8 )
文本相关尺寸及修饰
内置颜色colors.css
定位样式absolute · fixed
手势操作触屏 · 缩放
内置图标
按钮样式
常用标题更多 · 换一批
动画效果
Grace.JS ( 16 )
工具介绍
网络请求
页面跳转
数据缓存
图片操作
设备信息
消息提示
头部导航 动态设置
底部导航 动态设置
元素选择 尺寸获取
字符常用
数组操作
随机数据
日期时间
延时循环
对象操作
请求工具库 ( 7 )
工具库介绍
GET 请求
POST 请求
upload 上传
签名验证
用户登录检查
后端代码 php 版本示例
常用组件 ( 18 )
图片组件等比缩放
排序按钮
搜索组件
徽章角标
标签组件
功能标签选择 · 删除
星级组件
倒计时组件
城市选择
地区联动省市区三级
链接组件
为空展示
多图选择
多图上传
头像群组
数值动画
PK 投票
抽奖转盘
常用布局 ( 10 )
Flex布局必备技能
宫格布局默认5格
普通表格
数据表格
横向公告
时间轴布局
步骤展示
骨架加载
瀑布流布局
启动页广告全屏轮播形式
列表布局 ( 8 )
列表布局样式模式
滑动列表
可选列表
全选列表
树状列表
排序列表竖向拖拽
卡片列表
名片卡片
切换布局 ( 8 )
切换导航单行
切换导航多行
局部选项卡
全屏选项卡布局原理
分段切换
折叠面板
竖向切换导航适配
分类切换
滚动 · 轮播 ( 6 )
滚动区域原生 scroll-view
滚动公告基于 swiper
无缝滚动横向文本形式
无缝滚动横向卡片形式
竖向公告顺序卡片形式
轮播组件
刷新加载 ( 6 )
全屏加载遮罩模式
下拉刷新基于页面组件
加载更多基于页面组件
刷新和加载基于页面组件
刷新和加载自定义组合
刷新和加载原生组合模式
弹层 · 对话框 ( 6 )
遮罩弹层 popup
顶部消息框
模态对话框
底部操作表
右侧菜单
弹出菜单 popup menu
表单相关 ( 13 )
表单元素 form 布局
提交按钮
表单验证
字数限制
动态表单 添加删除元素
分步提交
步进器
数字键盘
滑动解锁
进度滑块 单滑块
区间滑块 双滑块
功能标签 选择 · 删除
点选按钮
日期时间 ( 6 )
日历日期 带有农历及时间
日期区间 日历形式
日期时间 picker 模式
时间段选择 picker 模式
日程日历 日程 · 提醒
横向日历 布局模式
文章相关 ( 10 )
文章列表 基础用法
文章列表 切换模式
文章列表 全屏选项卡模式
编辑器 自主研发 · 多端兼容
文章详情 编辑器解析
富文本 字符串转数组
展开阅读
评论布局
评论提交
底部分享
媒体播放 ( 2 )
音乐播放器
视频播放器
地图使用 ( 3 )
位置标注
地图周边
拖拽定位
用户模板 ( 8 )
用户登录
短信登录
短信验证
个人中心
头像剪裁
证件上传
会员排行榜
手写签名
电商常用 ( 10 )
商品列表
商品详情
订单中心
购物车模板
排序与筛选
地址列表
地址添加
抽奖模板
分类图标
优惠券组件
即时通讯 ( 3 )
消息展示组件
消息输入组件
消息列表展示
二维码及条码 ( 3 )
二维码生成
条形码生成
海报模板
多图上传组件

手册版本 V5.0

组件介绍

1、选择图片、预览图片、删除图片;

2、支持默认值设置;

4、完善的多图上传功能、带有上传进度 ;

5、上传失败重试功能;

6、上传成功返回图片数据并激活对应事件;

组件名称

gui-upload-images : /graceUI/组件目录/gui-upload-images

兼容平台

属性名称类型默认值作用
maxFileNumber数字9最大图片选择数
btnName字符串添加照片按钮文本
removeBtnColor字符串rgba(0, 0, 0, 0.8)删除按钮文本颜色
uploadServerUrl字符串
上传服务器 api 地址
progressSize数字1进度条尺寸
progressColor字符串#27BD81进度条激活颜色
progressBGColor字符串#F8F8F8进度条背景颜色
fileName字符串img上传时的文件名
formData对象{}上传时携带的表单数据
imgMode
字符串widthFix图片 mode 属性
header
对象{}上传时携带的 header 数据
save2uniCloud布尔false为 true 时基于 uniCloud 将图片上传至 uniCloud 云存储中
sourceType数组
['album', 'camera']图片源类型 'album' : 相册 , 'camera' : 摄像头
borderRadius字符串0rpx组件圆角尺寸

uniCloud 使用说明

01. 组件 <gui-upload-images ...... :save2uniCloud="true"></gui-upload-images>
02. 在 hx 内完成云服务空间配置工作,并选择阿里云

组件方法

1、upload 开始上传函数
2、setItems 设置默认值函数
3、clearAllImgs 清空图片
4、removeImg 删除某个图片

后端api接口返回值格式

成功:
{status : 'ok', data : '上传后图片地址', result : "完整的上传服务器返回的数据"}
失败:
{status : 'error', data : '具体错误信息'}

调试建议

写一个最简单的单图上传功能,调试接口返回值,保证接口无误再使用组件;

php版后端代码示例

<?php
class uploadController extends grace{
    public function index(){
        $this->allowSize = 5;
        if(!empty($_FILES['img'])){
            //获取扩展名
            $exename  = $this->getExeName($_FILES['img']['name']);
            //检查扩展名
            if(!in_array($exename, array('png', 'gif', 'jpeg', 'jpg'))){$this->json('格式错误', 'error');}
            //检查文件大小
            if($_FILES['img']['size'] > $this->allowSize*1024*1024){$this->json('文件过大', 'error');}
            //本地上传
            $file = uniqid().'.'.$exename;
            $imageSavePath = 'uploadimgs/'.$file;
            if(move_uploaded_file($_FILES['img']['tmp_name'], $imageSavePath)){
                // 请严格按照下面的 json 的格式返回数据
                $arr = array('status'=>'ok', 'data' => 'http://您的域名/'.$imageSavePath, 'result' => '您的自定义内容');
                exit(json_encode($arr));
            }else{
                $arr = array('status'=>'error', 'data' => '具体的错误信息', 'result' => '您的自定义内容');
                exit(json_encode($arr));
            }
        }
    }
    public function getExeName($file){
        $pathinfo      = pathinfo($file);
        return strtolower($pathinfo['extension']);
    }
}

演示代码

UNI 普通版本
NVUE 版本
登录并购买 GraceUI 后可以查阅完整手册内容 。