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

Vant Uploader實現(xiàn)上傳一張或多張圖片組件

 更新時間:2021年09月15日 08:33:02   作者:qq_25993655  
這篇文章主要為大家詳細介紹了Vant Uploader實現(xiàn)上傳一張或多張圖片組件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Vant Uploader實現(xiàn)上傳一張或多張圖片組件,供大家參考,具體內(nèi)容如下

html部分

<template>
  <div class="contWrap">
    <van-uploader
      v-model="fileList"
      :multiple="true"
      :before-read="beforeRead"
      :after-read="afterRead"
      :before-delete="delUploadImg"
      upload-icon="plus"
    >
    <!-- 注:這里是自定義上傳樣式 -->
      <!-- <p>
        <van-icon
          name="plus"
          color="#07c160"
          size=".5rem"
        />
        上傳照片
      </p> -->
    </van-uploader>
  </div>
</template>

js部分

<script>
import axios from "axios";
export default {
  name: "uploadImages",
  data() {
    return {
      fileList: [],
      uploadUrl: "/api/upload/fileUpload",
      headers: {
        token: this.$store.state.account.token,
      },
    };
  },

  methods: {
    // 返回布爾值
    beforeRead(file) {
      if (file instanceof Array) {
        //判斷是否是數(shù)組
        file.forEach((v) => {
          this.checkFile(v);
        });
      } else {
        this.checkFile(file);
      }
      return true;
    },
    //圖片類型檢查
    checkFile(file) {
      const format = ["jpg", "png", "jpeg"];
      const index = file.name.lastIndexOf(".");
      const finalName = file.name.substr(index + 1);
      if (!format.includes(finalName.toLowerCase())) {
        Toast("請上傳" + format.join(",") + "格式圖片");
        return false;
      }
    },
    afterRead(file) {
    // 此時可以自行將文件上傳至服務(wù)器
      if (file instanceof Array) {
        file.map((v) => {
          v.status = "uploading";
          v.message = "上傳中...";
          this.uploadImg(v);
        });
      } else {
        file.status = "uploading";
        file.message = "上傳中...";
        this.uploadImg(file);
      }
    },
    //上傳
    uploadImg(file) {
      const formData = new FormData();
      formData.append("file", file.file);
      axios
        .post(this.uploadUrl, formData, {
          headers: this.headers,
        })
        .then((res) => {
          if (res.data) {
            if (file instanceof Array) {
              //判斷是否是數(shù)組
              file.map((v, i) => {
                v.status = "success";
                v.message = "";
                v.url = res.data[i];
              });
            } else {
              file.status = "success";
              file.message = "";
              file.url = res.data.uploadUrl;
            }
          }
        })
        .catch((err) => {
          this.$notify({
            type: "warning",
            message: "上傳失敗",
          });
        });
    },
    //刪除
    delUploadImg(item) {
      this.fileList = this.fileList.filter((v) => v.url != item.url);
    }
  },
};
</script> 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue3中的ref、reactive問題解析

    vue3中的ref、reactive問題解析

    ref 和 reactive都是vue3推出的針對組合式設(shè)計的聲明響應(yīng)式狀態(tài)的API,兩者在使用之前都要先進行引入,本文通過實例代碼詳解vue3中的ref、reactive問題,感興趣的朋友一起看看吧
    2024-03-03
  • vue中的$emit 與$on父子組件與兄弟組件的之間通信方式

    vue中的$emit 與$on父子組件與兄弟組件的之間通信方式

    本文主要對vue 用$emit 與 $on 來進行組件之間的數(shù)據(jù)傳輸。重點給大家介紹vue中的$emit 與$on父子組件與兄弟組件的之間通信方式,感興趣的朋友一起看看
    2018-05-05
  • Ant?Design?Vue中的table與pagination的聯(lián)合使用方式

    Ant?Design?Vue中的table與pagination的聯(lián)合使用方式

    這篇文章主要介紹了Ant?Design?Vue中的table與pagination的聯(lián)合使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue中$attrs和$listeners詳解以及使用方法

    Vue中$attrs和$listeners詳解以及使用方法

    最近在研究Vue的組件庫,之前也用過$attrs和$listeners,官方文檔描述的不太詳細,也沒有太好的例子,下面這篇文章主要給大家介紹了關(guān)于Vue中$attrs和$listeners詳解以及使用的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • Vue實現(xiàn)高德坐標(biāo)轉(zhuǎn)GPS坐標(biāo)功能的示例詳解

    Vue實現(xiàn)高德坐標(biāo)轉(zhuǎn)GPS坐標(biāo)功能的示例詳解

    生活中常用的幾種坐標(biāo)有:WGS-84、GCJ-02與BD-09。本文將利用Vue實現(xiàn)高德坐標(biāo)轉(zhuǎn)GPS坐標(biāo)功能,即實現(xiàn)GCJ-02坐標(biāo)轉(zhuǎn)換成WGS-84坐標(biāo),需要的可以參考一下
    2022-04-04
  • Vue.js實戰(zhàn)之使用Vuex + axios發(fā)送請求詳解

    Vue.js實戰(zhàn)之使用Vuex + axios發(fā)送請求詳解

    這篇文章主要給大家介紹了關(guān)于Vue.js使用Vuex與axios發(fā)送請求的相關(guān)資料,文中介紹的非常詳細,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-04-04
  • Vue3中使用styled-components的實現(xiàn)

    Vue3中使用styled-components的實現(xiàn)

    本文主要介紹了Vue3中使用styled-components的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • vue+css如何實現(xiàn)圓環(huán)漸變儀表盤

    vue+css如何實現(xiàn)圓環(huán)漸變儀表盤

    這篇文章主要介紹了vue+css如何實現(xiàn)圓環(huán)漸變儀表盤問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • vuex刷新之后數(shù)據(jù)丟失,數(shù)據(jù)持久化,vuex-persistedstate問題

    vuex刷新之后數(shù)據(jù)丟失,數(shù)據(jù)持久化,vuex-persistedstate問題

    這篇文章主要介紹了vuex刷新之后數(shù)據(jù)丟失,數(shù)據(jù)持久化,vuex-persistedstate問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Vue+Django項目部署詳解

    Vue+Django項目部署詳解

    這篇文章主要介紹了Vue+Django項目部署詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評論

阜康市| 图们市| 随州市| 溧水县| 天气| 寿光市| 波密县| 墨脱县| 西林县| 小金县| 鄢陵县| 阳谷县| 石柱| 澳门| 苏尼特右旗| 三门峡市| 榕江县| 安远县| 康保县| 焦作市| 原平市| 灌云县| 长治县| 新干县| 清水县| 长春市| 承德县| 昭苏县| 杭锦后旗| 建瓯市| 华容县| 芜湖市| 尚志市| 井冈山市| 滨州市| 霍州市| 时尚| 图片| 柘荣县| 无极县| 青川县|