2021-05-31

Vue使用element组件进行导入和导出文档

先看HTML部分:

<!-- 导入弹框start -->
      <el-dialog
        :title="textMap[dialogStatus]"
        :visible.sync="dialogFormVisible2"
        :close-on-click-modal="false"
      >
        <el-form :model="importform">
          <el-form-item class="box111" label="导入上传" :label-width="LabelWidth">
            <el-upload
              class="upload-demo"
              action="crm/knowledge-book/book-import"
              :on-preview="handlePreview"
              :on-remove="handleRemove"
              :before-remove="beforeRemove"
              multiple
              :limit="3"
              :on-exceed="handleExceed"
              :before-upload="beforeAvatarUpload2"
              :http-request="fileUpload2"
            >
              <el-button size="mini" type="primary">点击上传</el-button>
              <div slot="tip" class="el-upload__tip">只能上传csv格式文件</div>
            </el-upload>
            <el-button class="daochu" size="mini" type="primary" @click="getAssistantAll()">点击导出</el-button>
          </el-form-item>
        </el-form>
        <div slot="footer" class="dialog-footer">
          <el-button size="small" @click="noShow()">取 消</el-button>
          <el-button size="small" type="primary" @click="importAssistantAll()">确 定</el-button>
          <!-- <el-button size="small" type="primary" @click="exportCsv()">确 定</el-button> -->
        </div>
      </el-dialog>
      <!-- 导入弹框end -->

1导出文档操作
导出文档就是说要把填写数据的模板导出来,我这里是就导出了模板的列表头部

getAssistantAll() {
      getKnowledgeInter().then(res => {
        console.log(res)
        if (res) {
          let data = 'data:text/csv;charset=utf-8,\ufeff' + res
          let link = document.createElement('a')
          link.setAttribute('href', data)
          link.setAttribute('download', '客户导入' + '.csv')
          link.click()
        } else {
          this.$message({
            showClose: true,
            message: res.msg,
            type: 'error'
          })
        }
      })
    }

2 导入文档操作,文档导入之前不许为空,这里我没有设置,大佬们可以自行设置一下
请看代码:

    // 新的导入
    importAssistantAll() {
      if (this.fileList !== undefined) {
        this.importform.path = this.fileList.url // 上传-文件保存路径
      }
      getKnowledgeImport(this.importform).then(res => {
        console.log(res)
        if (res) {
          console.log(res)
          if (res.code == 200) {
            // 成功提示
            this.$message({
              showClose: true,
              message: '导入成功',
              type: 'success'
            })
            // 刷新数据
            this.getKnowledgeDataList()
            // 隐藏弹窗
            this.dialogFormVisible2 = false
          } else {
            this.$message({
              showClose: true,
              message: res.msg,
              type: 'warning'
            })
          }
        } else {
          this.$message({
            showClose: true,
            message: res.msg,
            type: 'error'
          })
        }
      })
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值