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

Vue 使用formData方式向后臺(tái)發(fā)送數(shù)據(jù)的實(shí)現(xiàn)

 更新時(shí)間:2019年04月14日 09:57:39   作者:邢走在云端  
這篇文章主要介紹了Vue 使用formData方式向后臺(tái)發(fā)送數(shù)據(jù)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

很多時(shí)候在使用form向后臺(tái)發(fā)送數(shù)據(jù)的時(shí)候,并不需要使用到表單組件。

例如時(shí)間戳、ip等,這個(gè)時(shí)候除了ajax之外,還可以使用HTML5的一個(gè)全新方法FormData;在input[type = file]的文件類型中,很多時(shí)候想要把一張圖片或者是使用canvas繪制好的圖像傳送到后臺(tái)時(shí),無(wú)法賦值給file文件,只能轉(zhuǎn)換為base64類型傳送到后臺(tái),然后由后臺(tái)轉(zhuǎn)換為圖片再進(jìn)行服務(wù)器存儲(chǔ);此過(guò)程較為復(fù)雜;

使用formdata,只需創(chuàng)建新的formdata對(duì)象,將要發(fā)送的數(shù)據(jù)添加進(jìn)去,后臺(tái)即可接收;數(shù)據(jù)以及文件對(duì)象皆可;

1. 基本使用方式

template

<input class="file" name="file" type="file" accept="image/png,image/gif,image/jpeg" @change="update"/>

JavaScript

update (e) {
  let file = e.target.files[0]
  // console.log(file)
  let param = new FormData() // 創(chuàng)建form對(duì)象
  param.append('file', file, file.name) // 通過(guò)append向form對(duì)象添加數(shù)據(jù)
  param.append('id', this.$store.state.userId) // 添加form表單中其他數(shù)據(jù)
   // withCredentials: true 使得后臺(tái)可以接收表單數(shù)據(jù) 跨域請(qǐng)求
  const instance = axios.create({
    withCredentials: true
  })
  // url為后臺(tái)接口
  instance.post('url', param)
    .then(this.succ) // 成功返回信息 調(diào)用函數(shù) 函數(shù)需自己定義,此處后面省略
    .catch(this.serverError) // 服務(wù)器錯(cuò)誤 調(diào)用對(duì)應(yīng)函數(shù) 函數(shù)需自己定義,此處后面省略
}

2. 美化 input file 按鈕 (拓展)

思路:

  1. 簡(jiǎn)單粗暴地隱藏:opacity: 0;
  2. 在 <input class="file"> 元素節(jié)點(diǎn)的位置上創(chuàng)建一個(gè)好看的元素節(jié)點(diǎn),比如img
  3. 將 <input class="file"> 元素的z軸變高,使得其覆蓋<img/> :z-index: 5;
  4. 因?yàn)?<input class="file"> 是透明的,那么我們就只看見(jiàn)它同xy上的好看的<img />
  5. 點(diǎn)擊這個(gè)好看的<img /> 其實(shí)是點(diǎn)擊了它上層的表單

以上思路可以實(shí)現(xiàn)點(diǎn)擊用戶頭像,通過(guò)表單上傳更換頭像,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vuejs父子組件之間數(shù)據(jù)交互詳解

    vuejs父子組件之間數(shù)據(jù)交互詳解

    這篇文章主要為大家詳細(xì)介紹了vuejs父子組件之間的數(shù)據(jù)交互,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Vue中過(guò)濾器定義以及使用方法實(shí)例

    Vue中過(guò)濾器定義以及使用方法實(shí)例

    過(guò)濾器的功能是對(duì)要顯示的數(shù)據(jù)進(jìn)行格式化后再顯示,其并沒(méi)有改變?cè)镜臄?shù)據(jù),只是產(chǎn)生新的對(duì)應(yīng)的數(shù)據(jù),下面這篇文章主要給大家介紹了關(guān)于Vue中過(guò)濾器定義以及使用方法的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • 在Vue中使用echarts的方法

    在Vue中使用echarts的方法

    這篇文章主要介紹了Vue中使用echarts的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • Vue中Object.defineProperty用法示例

    Vue中Object.defineProperty用法示例

    Vue中的Object.defineProperty是一個(gè)比較重要的方法,它是可以定義對(duì)象中屬性的一個(gè)方法,相比于在對(duì)象中直接定義的對(duì)象,它更具有靈活性,本文將通過(guò)代碼示例給大家簡(jiǎn)單介紹一下Vue中的Object.defineProperty,需要的朋友可以參考下
    2023-08-08
  • 詳解Vue的監(jiān)聽(tīng)屬性

    詳解Vue的監(jiān)聽(tīng)屬性

    這篇文章主要為大家介紹了Vue的監(jiān)聽(tīng)屬性,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-11-11
  • vue開(kāi)發(fā)中數(shù)據(jù)更新但視圖不刷新的解決方法

    vue開(kāi)發(fā)中數(shù)據(jù)更新但視圖不刷新的解決方法

    在開(kāi)發(fā)中我們處理數(shù)據(jù)時(shí)會(huì)遇到數(shù)據(jù)更新了,但視圖并沒(méi)有更新,這種情況往往是數(shù)據(jù)嵌套層數(shù)過(guò)多導(dǎo)致的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于vue開(kāi)發(fā)中數(shù)據(jù)更新但視圖不刷新的解決方法,需要的朋友可以參考下
    2022-11-11
  • el-select 數(shù)據(jù)回顯,只顯示value不顯示lable問(wèn)題

    el-select 數(shù)據(jù)回顯,只顯示value不顯示lable問(wèn)題

    這篇文章主要介紹了el-select 數(shù)據(jù)回顯,只顯示value不顯示lable問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue定義在computed的變量無(wú)法更新問(wèn)題及解決

    vue定義在computed的變量無(wú)法更新問(wèn)題及解決

    這篇文章主要介紹了vue定義在computed的變量無(wú)法更新問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue使用mui遇到的坑及解決

    vue使用mui遇到的坑及解決

    這篇文章主要介紹了vue使用mui遇到的坑及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • vue中4個(gè)自定義指令講解及實(shí)例用法

    vue中4個(gè)自定義指令講解及實(shí)例用法

    在本篇文章里小編給大家整理了一篇關(guān)于vue中4個(gè)自定義指令講解及實(shí)例用法,有興趣的朋友們可以跟著學(xué)習(xí)下。
    2021-12-12

最新評(píng)論