iT邦幫忙

0

想請問React裡async , await 這樣使用為什麼沒效果呢?

如題,功能是要做axios圖片上傳,取回上傳後位置的URL後,再用一個axios送出儲存GoodsId和圖片URL到資料庫

code如下,目前這樣寫會遇到 第一個axios沒有await的樣子,直接就跑去執行下面的code 導致要傳入的圖片URL報undefind

 const addBanner = async () => {
    let upIMG= new FormData()
    upIMG.append('file', image)  

    const config = {
      headers: { 'content-type': 'multipart/form-data' }
     }
    
    const uploadImgRes = await Axios.post(uploadURL, upIMG, config)
    
    let data2 = {
      slideshowCover: uploadImgRes.data.key, //key是上傳完返回的URL
      goodsId: goodsId,
      }

    const config2 = {
      headers: { 
        'Content-Type': "application/json",
        'token': token 
      }
    }
    const addBannerRes = await Axios.post(addURL, data2, config2)
    console.log(addRes.data.code);
    };

還請各位高手幫忙解答,感激不盡!

1 個回答

0
海綿寶寶
iT邦大神 1 級 ‧ 2021-07-01 17:28:12
Logan iT邦新手 5 級 ‧ 2021-07-01 17:50:15 檢舉

好的!感謝大大,晚點來試試看!
剛發現用async function abc()命名就可以,用箭頭函數才失效,來再去深入研究一下!

harry xie iT邦新手 3 級 ‧ 2021-07-01 18:48:20 檢舉

語法是沒有問題的,我也很好奇為什麼用箭頭函數會失效

Logan iT邦新手 5 級 ‧ 2021-07-04 21:48:43 檢舉

嗯嗯 我後來其他的component這樣寫竟然正常.... 可能遇到什麼不可預期錯誤>< 也沒爬到其他相關的問題了

我要發表回答

立即登入回答