亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

 更新時間:2023年05月24日 09:07:50   作者:肥仔仔仔  
這篇文章主要介紹了vue使用formData時候傳遞參數(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來進行追加
formData.append(key,value)
//取出追加的值
formData.get(key)
//修改值
formData.set(key,newVale)

2.通過表單對formData進行初始化

<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進行初始化

var btn=document.querySelector("#btn");
btn.onclick=function(){
? ? //獲取表單元素
? ? var form=document.querySelector("#myForm");
? ? //初始化表單
? ? var formdata=new FormData(form);
?? ?//此時可以進行一個操作,獲取或者設(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是進行了二次封裝,所以傳遞表達的時候會傳遞一個空表單過去,這是因為axios在進行二次封裝的時候回影響到原來的表單提交或者文件上傳

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

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

關(guān)于formData傳參問題

目前再做一個支付寶小程序的項目,使用web-view嵌套h5。

做上傳圖片功能時發(fā)現(xiàn)在ios下的formData傳值有問題,安卓下就是好的。因為web-view嵌套h5不支持上傳圖片功能。ios給參數(shù)做了一些封裝,所以后端接收不到。

然后我就可以利用axios 的transformRequest 配置項。原本調(diào)用接口傳參方式,由傳遞formdata格式,改為直接傳遞普通數(shù)據(jù),在transformRequest中組裝formdata參數(shù)。

?async takePicFiles(file: any) {
? ? if (file != null) {
? ? ? try {
? ? ? ? const res = await ocrImg({
? ? ? ? ? shopId: getShopId(),
? ? ? ? ? img: file,
? ? ? ? });
? ? ? } catch (e) {}
? ? }
? }
export const ocrImg = (data:any)=>{
? ? return http.request({
? ? ? ? url: httpStr + '/output/invoiceOcr/ocrImg',
? ? ? ? method: 'post',
? ? ? ? data,
? ? ? ? transformRequest: [function (data: any) {
? ? ? ? ? ? const formdata = new FormData()
? ? ? ? ? ? formdata.append("shopId", data.shopId);
? ? ? ? ? ? formdata.append("img",data.img);
? ? ? ? ? ? return formdata
? ? ? ? }],
? ? ? ? type: 'application/x-www-form-urlencoded',
? ? })
}

問題解決了 

總結(jié)

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

相關(guān)文章

  • 詳解Vue前端對axios的封裝和使用

    詳解Vue前端對axios的封裝和使用

    這篇文章主要介紹了Vue前端對axios的封裝和使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • vue初始化動畫加載的實例

    vue初始化動畫加載的實例

    今天小編就為大家分享一篇vue初始化動畫加載的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • Vue使用Axios請求攔截器的案例詳解

    Vue使用Axios請求攔截器的案例詳解

    在Vue項目中,Axios是一個非常流行的HTTP客戶端,用于發(fā)送請求和接收響應(yīng),Axios攔截器是Axios的一個強大功能,它允許你在請求發(fā)送之前和響應(yīng)返回之后對請求和響應(yīng)進行處理和攔截,本文將結(jié)合實際案例,詳細介紹如何在Vue中使用Axios攔截器,需要的朋友可以參考下
    2024-12-12
  • vue3封裝echarts圖表數(shù)據(jù)無法渲染到頁面問題

    vue3封裝echarts圖表數(shù)據(jù)無法渲染到頁面問題

    這篇文章主要介紹了vue3封裝echarts圖表數(shù)據(jù)無法渲染到頁面問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-09-09
  • Vue如何使用Element-ui表單發(fā)送數(shù)據(jù)與多張圖片到后端詳解

    Vue如何使用Element-ui表單發(fā)送數(shù)據(jù)與多張圖片到后端詳解

    在做項目的時候遇到一個問題,前端需要上傳表單到后端,表單數(shù)據(jù)包括文本內(nèi)容和圖片,這篇文章主要給大家介紹了關(guān)于Vue如何使用Element-ui表單發(fā)送數(shù)據(jù)與多張圖片到后端的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • Vue項目使用Websocket大文件FileReader()切片上傳實例

    Vue項目使用Websocket大文件FileReader()切片上傳實例

    這篇文章主要介紹了Vue項目使用Websocket大文件FileReader()切片上傳實例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue響應(yīng)式原理的示例詳解

    Vue響應(yīng)式原理的示例詳解

    Vue 最獨特的特性之一,是非侵入式的響應(yīng)系統(tǒng)。數(shù)據(jù)模型僅僅是普通的 JavaScript 對象。而當你修改它們時,視圖會進行更新。本文將通過示例詳解Vue的響應(yīng)式原理,感興趣的可以了解一下
    2022-03-03
  • vue中的數(shù)據(jù)格式化filters、formatter方式

    vue中的數(shù)據(jù)格式化filters、formatter方式

    這篇文章主要介紹了vue中的數(shù)據(jù)格式化filters、formatter方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 詳解Vue3怎么使用element-plus

    詳解Vue3怎么使用element-plus

    本文主要介紹了Vue3怎么使用element-plus,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Vue.js框架實現(xiàn)購物車功能

    Vue.js框架實現(xiàn)購物車功能

    這篇文章主要為大家詳細介紹了Vue.js框架實現(xiàn)購物車功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06

最新評論