vue選擇本地文件

需求:通過頁面的按鈕實(shí)現(xiàn)本地文件的選擇(以選擇歌曲為例)。

思路:利用原生input的type="file"來實(shí)現(xiàn)。

###1.先自定義上傳按鈕
//HTML部分
<div class="p10 bs mb10" style="height: 40px">
  <el-button type="text" size="small" @click="triggerFileInput">
    選擇歌曲
  </el-button>
  <span class="f12 ml10">請(qǐng)先選擇本地音樂?。。?lt;/span>
  <input
    ref="audioInput"
    style="display: none; height: 10px"
    type="file"
    @change="handleFileSelect"
    multiple
    accept="audio/*"
  />
</div>
 
 
//input的點(diǎn)擊事件轉(zhuǎn)移到自定義的按鈕上面
triggerFileInput() {
  this.$refs.audioInput.click();
},

2.獲取上傳數(shù)據(jù)<通過input的change事件可實(shí)現(xiàn)>

// 添加本地音樂
handleFileSelect(event) {
  const files = event.target.files;
  this.selectedFiles = JSON.parse(JSON.stringify(musicList));
  this.fileUrl = null;
  for (let i = 0; i < files?.length; i++) {
    const file = files[i];
    const reader = new FileReader();
    reader.onload = (e) => {
      const fileObj = {
        name: file.name,
        url: e.target.result,
        // lrc: null,
        lrcList: [],
      };
      this.selectedFiles.push(fileObj);
    };
    reader.readAsDataURL(file);
  }
},

這里將選擇的歌曲處理格式之后存放進(jìn)selectedFiles的數(shù)組,以便后續(xù)操作。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前端無法像原生APP一樣直接操作本地文件,否則的話打開個(gè)網(wǎng)頁就能把用戶電腦上的文件偷光了,所以需要通過用戶觸發(fā),用...
    AlphaEarth閱讀 536評(píng)論 0 0
  • 前端無法像原生APP一樣直接操作本地文件,否則的話打開個(gè)網(wǎng)頁就能把用戶電腦上的文件偷光了,所以需要通過用戶觸發(fā),用...
    雷波_viho閱讀 882評(píng)論 0 1
  • 本篇文章的主要目的是介紹本地文件相關(guān) API 的使用,好的,廢話不多說,下面直接開始。 基礎(chǔ)的 File API ...
    ghwaphon閱讀 2,405評(píng)論 3 4
  • 參考資料:極客時(shí)間《MySQL實(shí)戰(zhàn)45講》 1 基礎(chǔ)架構(gòu) 存儲(chǔ)引擎層負(fù)責(zé)數(shù)據(jù)的存儲(chǔ)和提取。其架構(gòu)模式是插件式的,支...
    IM后海大鯊魚閱讀 1,038評(píng)論 0 0
  • 軟件開發(fā)流程【了解】 網(wǎng)站開發(fā)制作流程:任何一個(gè)系統(tǒng)的開發(fā)都是一件非常復(fù)雜的事情,涉及的工作也都是方方面面的。一個(gè)...
    好像在哪見過你丶閱讀 2,368評(píng)論 0 1

友情鏈接更多精彩內(nèi)容