Maison  >  Article  >  interface Web  >  Explication détaillée de la façon dont el-upload implémente le téléchargement de fichiers Excel

Explication détaillée de la façon dont el-upload implémente le téléchargement de fichiers Excel

小云云
小云云original
2018-01-20 10:50:513687parcourir

Cet article présente principalement les informations pertinentes du composant elemetUi-el-upload pour implémenter l'instance de téléchargement de fichiers Excel. J'espère que grâce à cet article, vous pourrez réaliser une telle fonction. Les amis qui en ont besoin pourront s'y référer. j'espère que cela pourra aider tout le monde.

Composant elemetUi - el-upload implémente un exemple de téléchargement de fichiers Excel

[Exigence] Pour implémenter le téléchargement de fichiers Excel, lors du téléchargement sur le serveur, vous devez également joindre un paramètre pour déterminer le format de fichier avant de demander l'interface de téléchargement du fichier.

[Points de connaissance]

1. Dans le document officiel el-upload, les attributs suivants sont principalement utilisés :

data 可选参数, 上传时附带的额外参数
name 可选参数, 上传的文件字段名
before-upload 可选参数, 上传文件之前的钩子,参数为上传的文件,若返回 false 或者返回 Promise 且被 reject,则停止上传。

2, divisé pour l'interception de chaîne

[Analyse]


<template>
  <p class="panel admin-panel">
    <p class="panel-head" id="add"><strong><span class="el-icon-edit"></span><span class="title">上传数据</span></strong></p>
    <p class="body-content">
      <el-form :model="ruleForm" ref="ruleForm" label-width="100px" class="form uploadform">
        <el-form-item label="部门" prop="name">
          <el-select v-model="form.type" placeholder="请选择" style="width: 135px">
            <el-option
                v-for="item in options"
                :key="item.value"
                :label="item.label"
                :value="item.value">
            </el-option>
          </el-select>
        </el-form-item>

        <el-form-item>

          <el-upload
              class="upload-demo"
              ref="upload"
              action="http://10.1.20.218:8088/gnh-webadmin-platfrom/api/v1/sendSalaryBillGeinihua"
              :on-preview="handlePreview"
              :before-upload="beforeAvatarUpload"
              :on-remove="handleRemove"
              :file-list="fileList"
              :auto-upload = &#39;false&#39;
              :on-success = &#39;handleSuccess&#39;
              :data="form"
              name="salaryBill">
            <el-button slot="trigger" size="small" type="primary">选取文件</el-button>
            <el-button style="margin-left: 10px;" size="small" type="success" @click="submitUpload">上传到服务器</el-button>
            <p slot="tip" class="el-upload__tip">只能上传xls/xlsx文件</p>
          </el-upload>

        </el-form-item>
      </el-form>
    </p>
  </p>
</template>
<script>
  export default {
    data() {
      return {
        options: [{
          value: &#39;1&#39;,
          label: &#39;帅哥部&#39;
        }, {
          value: &#39;2&#39;,
          label: &#39;美女部&#39;
        }],
        fileName:&#39;&#39;,
        fileList:[],
        ruleForm: {
//          name: &#39;&#39;,
          isShow: &#39;0&#39;
        },
        form:{
          type:&#39;1&#39;
        },

      };
    },
    methods: {
      submitUpload() {
        this.$refs.upload.submit();
      },

      beforeAvatarUpload(file) {

        let Xls = file.name.split(&#39;.&#39;);

        if(Xls[1] === &#39;xls&#39;||Xls[1] === &#39;xlsx&#39;){
          return file
        }else {
          this.$message.error(&#39;上传文件只能是 xls/xlsx 格式!&#39;)
          return false
        }

      },
      handleRemove(file, fileList) {
      },
      handlePreview(file) {
      },
      handleSuccess(res,file,fileList){

        if(res.code===20000){
          this.$message({
            message: &#39;上传成功!&#39;,
            type: &#39;success&#39;
          });
        }else {
          this.$message({
            message: res.msg,
            type: &#39;error&#39;
          });
        }

      }
    }
  }
</script>
<style scope>
  input[type="file"] {
    display: none;
  }
  .el-upload-list{
    width: 200px;
  }
  .el-select {
    width: 135px;
  }

</style>

Recommandations associées :

php télécharger Comment juger s'il y a des images dans le fichier lors du téléchargement de fichiers Excel

Comment juger s'il y a des images dans le fichier lors du téléchargement de fichiers Excel en php

jquery-file -upload Téléchargement de fichiers avec partage d'exemple d'effet de barre de progression

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn