ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 单图片上传 系统内置了附件管理,图片上传后传递的值为图片url或附件ID。 - 方法原型: ``` addImage($name = '', $title = '', $tips = '', $default = '', $attr = []) ``` - 参数说明: ``` * @param string $name 字段名:是否必填 格式: name:require 或 name * @param string $title 标题 * @param string $tips 提示 * @param string $default 默认值 * @param array $attr 组件属性 { * value: id/url, 值使用的附件字段, id-保存附件ID, url-保存附件url, 默认为url, * width: 图片宽度限制,int类型, * height: 图片高度限制,int类型, * size_type: 尺寸限制类型, absolute: 绝对值, ratio: 按比例, * format: 格式限制(逗号分隔的字符串或数组,默认为 ['image/png', 'image/jpeg', 'image/gif']), * size: 文件大小限制,int类型,单位为字节, * limit: 图片数量限制,用于多图片上传, * disabled: 是否禁用上传功能, 即只做展示 * long_image: 长图模式,每行显示一张,依次往下显示, bool * long_image_width: 长图模式时图片的宽度,不传时不限制大小 * draggable: 图片是否可拖拽排序 * drag: 是否开启拖拽上传 * list_type: 图片列表显示类型, 默认picture-card, 可传值text * multiple: 图片是否支持多选 * big: 是否为大图模式 * } ``` ## 调用方式 - 添加图片上传控件 ``` return SBuilder::make('form') ->addImage('avatar', '头像') ->fetch(); ``` > 页面效果: ![](images/screenshot_1557906612486.png) - 可以通过`attr`参数限制上传图片的宽高、大小及格式 ``` return SBuilder::make('form') ->addImage('avatar', '头像', '支持jpg、jpeg、png类型,尺寸为120*120px,大小不超过1M', '', [ 'width' => 120, 'height' => 120, 'size' => 1024*1024, 'format' => ['image/png', 'image/jpeg'] ]) ->fetch(); ``` > format格式可以是数组,也可以是逗号分隔的字符串。