element-ui 上傳文件 + 攜帶參數案例


element-ui上傳文件 + 攜帶參數案例

我做的案例是上傳一個EXCEL文件,順帶還要攜帶一些參數上去!我這兒測試的是自動上傳,手動上傳后面找一個時間來加上吧!

上傳文件的代碼

<el-dialog title="附件管理" :visible.sync="dialogVisible" width="30%">
      <!-- 1.將<el-upload>代碼添加到<el-dialog>代碼塊中 -->
      <el-upload
        ref="upload"
        class="upload-demo"
        :action="uploadFileURL"
        :data="loadFileParams"
        :before-upload="uploadBefore"
        :on-success="uploadSuccess"
        :headers="headers"
      >
        <i class="el-icon-upload"></i>
        <div class="el-upload__text">將文件拖到此處,或<em>點擊上傳</em></div>
        <div class="el-upload__tip" slot="tip">
          只能上傳jpg/png文件,且不超過500kb
        </div>
      </el-upload>
      <span slot="footer" class="dialog-footer">
        <el-button @click="cancelUpload">取 消</el-button>
        <el-button type="primary" @click="ConfirmUpload"
        >確 定</el-button
        >
      </span>
    </el-dialog>

邏輯代碼

data() {
  return {
     uploadFileURL:
        'http://192.168.1.105:8090/project/details/importProjectFile', // 上傳文件的地址!
     loadFileParams: { // 上傳文件的參數!
        projectNumber: '',
        projectName: '',
        projectHead: '',
        projectType: '',
        fileNames: ''
      },
      headers: {
        Authorization: window.sessionStorage.getItem("myToken") // 我的反正是要加上這個屬性才能成功上傳!!否則會報401的錯誤!【認證失敗,無法訪問系統資源"】沒辦法,后台要求的!
      }
  }
},
method: {
      uploadBefore(file) { // 這個函數的目的就是在上傳文件之前獲取到文件的名字然后保存到攜帶的參數變量里面!
      this.loadFileParams.fileNames = file.name
    }
    uploadSuccess(file) { // 這個函數就是文件上傳成功時會調用的函數,打印的是成功響應的數據!
      console.log(file)
    },
}

失敗響應的數據:

成功響應的數據:

參考文章:
文件上傳時如何攜帶參數和接收返回值(親測有效)
element-ui中upload組件獲取上傳文件信息


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM