欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue中formdata傳值給后臺時參數(shù)為空的問題

 更新時間:2022年06月02日 08:36:16   作者:Charonmomo  
這篇文章主要介紹了vue中formdata傳值給后臺時參數(shù)為空的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

formdata傳值給后臺時參數(shù)為空

在vue里面使用formData的時候參數(shù)值為空,是因為axios是進(jìn)行了二次封裝,所以傳遞表達(dá)的時候會傳遞一個空表單過去

axios在進(jìn)行二次封裝的時候回影響到原來的表單提交或者文件上傳, 所以可以用原生的發(fā)請求

// list 是一個對象數(shù)組
export const orinCatelogue = (list) => {
  let fd = new FormData()
  for(var i=0;i<list.length;i++) {
    console.log(list[i])
    console.log(Object.keys(list[i]))
    console.log(Object.values(list[i]))
    fd.append(Object.keys(list[i]),Object.values(list[i]))
    console.log("---------")
  }
  return axios({
    method: "post",
    url: `sgcc/qa/catalogue`,
    data: fd,
    headers: { "Content-Type": "multipart/form-data" }
  })
}

比如輸入是:

控制臺輸出:

實際上傳遞的參數(shù):

使用formData時候傳遞參數(shù)是個空值的情況

關(guān)于在vue中使用axios,傳遞的參數(shù)是formData的情況(上傳文件,圖片,文檔等)

formData用途

1.將from表單元素的name和value結(jié)合,實現(xiàn)表單數(shù)據(jù)的序列化

2.異步上傳文件 

使用formData

1.創(chuàng)建一個空對象

var formData = new FormData();
//大部分情況下,使用formData追加數(shù)據(jù),是通過append() Api來進(jìn)行追加
formData.append(key,value)
//取出追加的值
formData.get(key)
//修改值
formData.set(key,newVale)

2.通過表單對formData進(jìn)行初始化

<form id="myForm">
? ? <p>name:<input type="text" name="name" ?value="xiaolong"></p>
? ??? ?<p>age:<input type="text" name="age" ?value="23"></p>
? ? <p><input type="button" id="btn" value="添加"></p>
</form>

通過表單元素作為參數(shù),對formData進(jìn)行初始化

var btn=document.querySelector("#btn");
btn.onclick=function(){
? ? //獲取表單元素
? ? var form=document.querySelector("#myForm");
? ? //初始化表單
? ? var formdata=new FormData(form);
?? ?//此時可以進(jìn)行一個操作,獲取或者設(shè)置表單的值或者直接提交整個表單
? ? console.log(formdata.get("name"));//xiaolong
}

具體表單的操作API

大部分可以從mdn上面查找到

舉個例子:

獲取表單數(shù)據(jù)或者獲取整個表單對應(yīng)key的數(shù)據(jù)

formData.get('age')//獲取一個key為age的值
formData.getAll('age')//獲取全部key為age的數(shù)據(jù)

在vue里面使用formData的時候,因為axios是進(jìn)行了二次封裝,所以傳遞表達(dá)的時候會傳遞一個空表單過去,這是因為axios在進(jìn)行二次封裝的時候回影響到原來的表單提交或者文件上傳

因此在使用二次封裝axios的時候需要進(jìn)行一個參數(shù)的設(shè)置

this.$axios({
? ? method: "post",
? ? url: `你的請求地址`,
? ? data: formD,//這個是我的fromdata
? ? headers: {
? ? transformRequest: [data => data]//此處是我進(jìn)行設(shè)置的轉(zhuǎn)換數(shù)據(jù)類型
? ? }
})

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue實現(xiàn)下拉加載其實沒那么復(fù)雜

    vue實現(xiàn)下拉加載其實沒那么復(fù)雜

    這篇文章主要給大家介紹了關(guān)于vue實現(xiàn)下拉加載的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Vue router的addRoute方法實現(xiàn)控制權(quán)限方法詳解

    Vue router的addRoute方法實現(xiàn)控制權(quán)限方法詳解

    這篇文章主要介紹了vue動態(tài)路由添加,vue-router的addRoute方法實現(xiàn)權(quán)限控制流程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2022-09-09
  • vue3中ref和reactive的用法和解析(推薦)

    vue3中ref和reactive的用法和解析(推薦)

    這篇文章主要介紹了vue3的ref和reactive的用法和解析,開始部分講解了ref,reactive的使用實例,如何進(jìn)行類型的標(biāo)注,配合ts這么使用,接著講解了兩者的區(qū)別,分別需要注意的點,還有ref的頂層自動解包,需要的朋友可以參考下
    2023-03-03
  • Vue-CLI 項目在pycharm中配置方法

    Vue-CLI 項目在pycharm中配置方法

    這篇文章主要介紹了Vue-CLI 項目在pycharm中配置方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • vue調(diào)用谷歌授權(quán)登錄獲取用戶通訊錄的實現(xiàn)示例

    vue調(diào)用谷歌授權(quán)登錄獲取用戶通訊錄的實現(xiàn)示例

    本文主要介紹了vue調(diào)用谷歌授權(quán)登錄獲取用戶通訊錄的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Element樹形控件el-tree懶加載并設(shè)置默認(rèn)展開和選中的效果

    Element樹形控件el-tree懶加載并設(shè)置默認(rèn)展開和選中的效果

    本文主要介紹了Element樹形控件el-tree懶加載并設(shè)置默認(rèn)展開和選中的效果,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • 輕松學(xué)Vue組件之單文件組件

    輕松學(xué)Vue組件之單文件組件

    一個組件相當(dāng)于是一個小模塊,它是html、css與js的集合體,可以用于描述頁面中的某個結(jié)構(gòu)(模塊),下面這篇文章主要給大家介紹了關(guān)于輕松學(xué)Vue組件之單文件組件的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • vue實現(xiàn)web在線聊天功能

    vue實現(xiàn)web在線聊天功能

    這篇文章主要為大家詳細(xì)介紹了vue實現(xiàn)web在線聊天功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • vue項目中使用axios上傳圖片等文件操作

    vue項目中使用axios上傳圖片等文件操作

    axios 是一個基于Promise 用于瀏覽器和 nodejs 的 HTTP 客戶端。這篇文章主要給大家介紹了vue項目中使用axios上傳圖片等文件操作,需要的朋友參考下吧
    2017-11-11
  • vue3使用particles插件實現(xiàn)粒子背景的方法詳解

    vue3使用particles插件實現(xiàn)粒子背景的方法詳解

    這篇文章主要為大家詳細(xì)介紹了vue3使用particles插件實現(xiàn)粒子背景的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03

最新評論