formData使用append追加key/value后console为空的问题(已解决)

Posted leahtao的前端积累

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了formData使用append追加key/value后console为空的问题(已解决)相关的知识,希望对你有一定的参考价值。

在上传图片的时候需要对选择的图片通过表单的形式提交给后台,如下

handleEditorImgAdd(pos , $file){
            console.log(pos,$file)
            // 创建一个FormData空对象,然后使用append方法添加key/value
            var formdata = new FormData();
            formdata.append(‘image‘,$file);
            console.log(formdata)
            
            this.$http.post(‘/article/uploadImg‘, formdata).then(res =>{
                //将返回来的url替换到原本的位置

            })
        },

这样打印出的formdata为空,查看formadata的API才知道是需要调用它的方法才能获取到。

formdata接口将键值对格式的数据以表单的方式提交给后台。

属性不是直接挂载在到FormData实例上。我们可以通过它提供的迭代器,或者get方法去取值。

解决方案:FormData.get("键名")

 

handleEditorImgAdd(pos , $file){
            console.log(pos,$file)
            // 创建一个FormData空对象,然后使用append方法添加key/value
            var formdata = new FormData();
            formdata.append(‘image‘,$file);
            console.log(formdata.get(‘image‘))
            
            this.$http.post(‘/article/uploadImg‘, formdata).then(res =>{
                //将返回来的url替换到原本的位置

            })
        },

这样就可以了。

以上是关于formData使用append追加key/value后console为空的问题(已解决)的主要内容,如果未能解决你的问题,请参考以下文章

Ajax--FormData表单对象中的实例方法

JS - FormData详解

如何在 django 中从 JSONField 追加/删除数据

fromData使用方法详解

fromData使用方法详解

FormData 在数组中追加项目