js

FormData加axios实现图片上传(多图)

2018-11-07  本文已影响0人  俗人彭jin

FormData加axios单图

这里的file是1个input files[0]第一个对象

const {files} = this.state;
        let file = files[0].file;
        let param = new FormData(); //创建form对象
        param.append('file', file, file.name);//通过append向form对象添加数据
        param.append('chunk', '0');//添加form表单中其他数据
        console.log(param.get('file')); //FormData私有类对象,访问不到,可以通过get判断值是否传进去
        let config = {
            headers: {'Content-Type': 'multipart/form-data'}
        };  //添加请求头
        axios.post('file/upload', param, config)
            .then(response => {
                console.log(response.data);
        })

FormData加axios多图

这里的files是1个input files对象

     const {files} = this.state;
        let param = new FormData()
        for (var i = 0; i < files.length; i++) {
            param.append('file', files[i].file)
        }
        console.log(param.get('file')); //FormData私有类对象,访问不到,可以通过get判断值是否传进去
        let config = {
            headers: {'Content-Type': 'multipart/form-data'}
        };  //添加请求头
        axios.post('file/upload', param, config)
            .then(response => {
                console.log(response.data);
        })

上传base64 和单图类似

      let base64 = files[0].base64;
        let param = new FormData(); //创建form对象
        param.append('file', base64);//通过append向form对象添加数据
        let config = {
            headers: {'Content-Type': 'multipart/form-data'}
        };  //添加请求头
        axios.post('file/uploadbase', {file: file})
            .then(response => {
                console.log(response.data);
            })
上一篇下一篇

猜你喜欢

热点阅读