最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

antd upload上傳組件如何獲取服務(wù)端返回?cái)?shù)據(jù)

 更新時(shí)間:2023年02月12日 13:44:51   作者:wo_dxj  
這篇文章主要介紹了antd upload上傳組件如何獲取服務(wù)端返回?cái)?shù)據(jù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

antd upload上傳組件獲取服務(wù)端返回?cái)?shù)據(jù)

項(xiàng)目中使用到antd upload組件上傳的問題,按照官網(wǎng)示例,獲取不到返回的值,后面上去GitHub找了找解決辦法,

在upload返回值中,文件會(huì)有一個(gè)狀態(tài):status為done或者error的時(shí)候會(huì)返回一個(gè)response字段,這個(gè)字段里面會(huì)包含接口返回的數(shù)據(jù),因此只需要坐下過濾就可以拿到值了

我是這樣解決的

上面的判斷可以過濾掉,哪個(gè)是判斷多張上傳出錯(cuò)的時(shí)候  給一個(gè)提示,因?yàn)閍ntd upload組件多張上傳 會(huì)走多次beforeupload方法,會(huì)提示多次。

回歸正題,這樣判斷之后就可以拿到對(duì)應(yīng)的數(shù)據(jù),數(shù)據(jù)的處理就看自己的了,但是需要注意的就是如果是自己自定義的數(shù)據(jù),數(shù)據(jù)中必須要有uid字段,不然會(huì)報(bào)錯(cuò)。

還有就是上傳的時(shí)候會(huì)多次走upload方法,每一次都需要給你的filelist賦值,不然后續(xù)的upload方法就不會(huì)走,也就不會(huì)調(diào)取接口了.

antd的upload上傳組件uploading狀態(tài)踩坑記

說明

在使用Antd 的 Upload 組件 的onChange()方法中,打印fileList 中的文件狀態(tài)status 一直是 uploading,無法拿到上傳文件后服務(wù)端響應(yīng)的內(nèi)容,且組件下方不顯示文件列表問題

以下是解決方法:

const Dragger = Upload.Dragger;
constructor(props) {
        super(props);
        this.state = {
            fileList: [],
        };
    }
<Dragger
                        listType={"picture"}
                        action={uploadUrl}
                        accept={acceptPictype}
                        disabled={upLoadDisabled}
                        beforeUpload={() => {
                        }}
                        fileList={isScanSuccess?[]:this.state.fileList}
                        onChange={
                            (data) => {
                                console.log(data)
                                const { fileList, file } = data;
                             		//自己的邏輯
                                    this.setState({ fileList: [...fileList] });//這段代碼放在處理邏輯的最后面  
                                }                           
                            }
                        }
                    >
在github[解答](https://github.com/ant-design/ant-design/issues/2423)上此問題解答:

對(duì)于受控模式,你應(yīng)該在 onChange 中始終 setState fileList,保證所有狀態(tài)同步到 Upload 內(nèi)。類似這里的寫法:http://ant.design/components/upload/#components-upload-demo-fileList

// good  正確寫法

onFileChange(fileList) {
  if ( ... ) {
    ...
  } else {
    ...
  }
  // always setState
  this.setState({ fileList: [...fileList] });
}
<Upload fileList={this.state.fileList} onChange={this.onFileChange} />
// bad 寫法
onFileChange(fileList) {
  if ( ... ) {
    this.setState({ fileList: [...fileList] });
  } else {
    ...
  }
}
<Upload fileList={this.state.fileList} onChange={this.onFileChange} />
建議研習(xí)受控組件概念:https://facebook.github.io/react/docs/forms.html#controlled-components
注意需要克隆 fileList 以保障 Upload 能感知數(shù)組變化。
- this.setState({ fileList });
+ this.setState({ fileList: [...fileList] });

總結(jié)

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

相關(guān)文章

  • vue調(diào)用swiper插件步驟教程(最易理解且詳細(xì))

    vue調(diào)用swiper插件步驟教程(最易理解且詳細(xì))

    有時(shí)候我們需要在vue中使用輪播組件,如果是在vue組件中引入第三方組件的話,最好通過npm安裝,從而進(jìn)行統(tǒng)一安裝包管理,下面這篇文章主要給大家介紹了關(guān)于vue調(diào)用swiper插件的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • Vue框架里使用Swiper的方法示例

    Vue框架里使用Swiper的方法示例

    這篇文章主要介紹了Vue框架里使用Swiper的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-09-09
  • 詳解Vue3的組合式API中如何使用computed屬性

    詳解Vue3的組合式API中如何使用computed屬性

    在Vue中,computed屬性是一種計(jì)算屬性,它的值是根據(jù)其他數(shù)據(jù)的值動(dòng)態(tài)計(jì)算出來的,下面小編主要來和大家聊聊Vue 3的組合式API中如何使用computed屬性,感興趣的小伙伴快跟隨小編一起了解一下吧
    2023-06-06
  • Vue2幾種常見開局方式詳解

    Vue2幾種常見開局方式詳解

    這篇文章主要為大家詳細(xì)介紹了Vue2幾種常見開局方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • vue實(shí)現(xiàn)離線地圖+leaflet+高德瓦片的詳細(xì)代碼

    vue實(shí)現(xiàn)離線地圖+leaflet+高德瓦片的詳細(xì)代碼

    這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)離線地圖+leaflet+高德瓦片的詳細(xì)代碼,Vue Leaflet是一種結(jié)合了Vue框架和Leaflet庫(kù)的前端技術(shù),用于展示和操作天地圖,需要的朋友可以參考下
    2023-10-10
  • vue3+ts前端封裝EventSource并在請(qǐng)求頭添加token的方法

    vue3+ts前端封裝EventSource并在請(qǐng)求頭添加token的方法

    這篇文章主要介紹了vue3+ts前端封裝EventSource并在請(qǐng)求頭添加token,本文將介紹如何使用 event-source-polyfill 來解決這個(gè)問題,需要的朋友可以參考下
    2024-12-12
  • Vue 2.0中生命周期與鉤子函數(shù)的一些理解

    Vue 2.0中生命周期與鉤子函數(shù)的一些理解

    這篇文章主要給大家介紹了關(guān)于Vue 2.0中生命周期與鉤子函數(shù)的相關(guān)資料,對(duì)大家學(xué)習(xí)或者使用vue2.0具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨小編一起來看看吧。
    2017-05-05
  • Vue項(xiàng)目打包后可修改基礎(chǔ)接口地址配置的具體操作

    Vue項(xiàng)目打包后可修改基礎(chǔ)接口地址配置的具體操作

    vue項(xiàng)目打包過后發(fā)現(xiàn)地址錯(cuò)了或者發(fā)布到別的服務(wù)器發(fā)現(xiàn)請(qǐng)求的地址不對(duì),每次都要去重新打包,太浪費(fèi)時(shí)間,下面這篇文章主要給大家介紹了關(guān)于Vue項(xiàng)目打包后可修改基礎(chǔ)接口地址配置的具體操作,需要的朋友可以參考下
    2022-08-08
  • vue實(shí)現(xiàn)簡(jiǎn)單滑塊驗(yàn)證

    vue實(shí)現(xiàn)簡(jiǎn)單滑塊驗(yàn)證

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)簡(jiǎn)單滑塊驗(yàn)證,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Vue實(shí)現(xiàn)導(dǎo)航欄的顯示開關(guān)控制

    Vue實(shí)現(xiàn)導(dǎo)航欄的顯示開關(guān)控制

    今天小編就為大家分享一篇Vue實(shí)現(xiàn)導(dǎo)航欄的顯示開關(guān)控制,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11

最新評(píng)論

巴塘县| 茌平县| 葫芦岛市| 体育| 安吉县| 百色市| 独山县| 万源市| 德清县| 双城市| 尤溪县| 边坝县| 哈密市| 平顶山市| 金堂县| 肇源县| 柞水县| 上饶市| 阿鲁科尔沁旗| 宁海县| 合水县| 苏尼特左旗| 太康县| 老河口市| 娄烦县| 射洪县| 河北区| 绥宁县| 克山县| 绵阳市| 阿克苏市| 东阿县| 甘泉县| 揭阳市| 武穴市| 石林| 鲁山县| 东丰县| 贡山| 新竹县| 旺苍县|