这个问题QQ群问得人挺多,特意分出一个栏目讲解下
## 配置编辑器上传
如何初始化编辑器这里不讲述了,详情查阅起步第一章
Eleditor上传集成的是百度Webuploader插件,我们可以在实例化时候对upload参数进行配置
> upload对象有以下参数
* server {String} 文件接收地址
* fileSizeLimit {Number} 文件大小限制(M)
* formName {String} 文件域name,用于后台接收,默认为file
* formData {Object} 上传参数
* accept {Object}
* title {String} 文字描述
* extensions {String} 允许的文件后缀,不带点,多个用逗号分割。
* mimeTypes {String} 多个用逗号分割。
~~~
new Eleditor({
el: '#article-body',
/*upload是上传配置对象*/
upload:{
server: '/upload.php',//后台接收地址
fileSizeLimit: 2,//限制文件上传大小为2M
formName: 'image',//设置文件name,
accept: {//accept一般不用设置
title: 'Images',
extensions: 'gif,jpg,jpeg,bmp,png,webp',
mimeTypes: 'image/gif,image/jpg,image/jpeg,image/bmp,image/png,image/webp'
}
}
});
~~~
至此,前端配置已完成,当用户选择文件后,会自动以表单形式像server地址发送请求,后台接收文件务必返回一个json信息给编辑器
返回json包含三个字段status和url以及msg,其中status是整形,1=成功,0=失败
~~~
// 上传成功,status=1,携带url字段
{
"status": 1,
"url": "http://image.uisdc.com/wp-content/uploads/2017/05/homestarrunner.jpg"
}
~~~
~~~
// 上传失败,status=0,携带msg字段通知用户
{
"status": 0,
"msg": "服务器空间不足,上传失败"
}
~~~
后端上传接收不在本文讨论范畴,php可以参考webuploader[官方处理脚本](https://github.com/fex-team/webuploader/blob/master/server/fileupload.php)