码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • xlsx模板下载


    有点时候需要通过前端下载xlsx文档,具体代码实现如下:

    // html代码
    
          下载模板
    
    //js 代码
    // 定义接口
    export function genCclOptionXlsxApi(params) {
      return axios({
        url: api.genCclOptionXlsxUrl,
        method: 'get',
        responseType: 'blob',  // 注意前端需要添加这个
        params
      })
    }
    // 引入接口
    import { genCclOptionXlsxApi } from '@/api/vcp'
    // 下载xlsx模板方法
    downloadTemplateFuc() {
     console.log('vcp--下载模板')
     let paramsResponse = {
       nodeVersionNo:
         this.getTimeDetails?.nodeVersion ||
         this.form.cclVersion.match(regex)[1]
     }
     genCclOptionXlsxApi(paramsResponse)
       .then((res) => {
         const fileName =
           'CCP Option-V' +
           `${
             this.getTimeDetails?.nodeVersion ||
             this.form.cclVersion.match(regex)[1]
           }` +
           '_' +
           this.dateFormat('yyyyMMdd') +
           '.xlsx'
         const url = window.URL.createObjectURL(new Blob([res]))
         const link = document.createElement('a')
         link.style.display = 'none'
         link.href = url
         link.setAttribute('download', fileName)
         document.body.appendChild(link)
         link.click()
         URL.revokeObjectURL(link.href)
         document.body.removeChild(link)
         message.success('请求下载模板成功,请保存')
       })
       .catch((error) => {
         console.log('error:', error)
         message.error(error.error.data.errorMsg || '请求失败')
       })
    },
    dateFormat(fmt) {
       var o = {
         'M+': new Date().getMonth() + 1, // 月份
         'd+': new Date().getDate(), // 日
         'h+': new Date().getHours(), // 小时
         'm+': new Date().getMinutes(), // 分
         's+': new Date().getSeconds(), // 秒
         'q+': Math.floor((new Date().getMonth() + 3) / 3), // 季度
         S: new Date().getMilliseconds()
         // 毫秒
       }
       if (/(y+)/.test(fmt))
         fmt = fmt.replace(
           RegExp.$1,
           (new Date().getFullYear() + '').substr(4 - RegExp.$1.length)
         )
       for (var k in o)
         if (new RegExp('(' + k + ')').test(fmt))
           fmt = fmt.replace(
             RegExp.$1,
             RegExp.$1.length == 1
               ? o[k]
               : ('00' + o[k]).substr(('' + o[k]).length)
           )
       return fmt
    },
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
  • 相关阅读:
    2022“杭电杯”中国大学生算法设计超级联赛(10)签到题5题
    小目标检测-FA-SSD
    MyBatis的动态 SQL、代理机制与多级缓存
    Fisher信息与最大似然估计的渐进正态性(附有在Bernoulli分布上的计算)
    【计算机组成 课程笔记】7.2 DRAM和SRAM
    C++设计模式学习-面向对象设计原则
    Duality (order theory)
    数据仓库搭建_hdfs,ACL权限认证(可以精确到个人的权限)
    Flutter 教程之使用 Flutter 构建 Chrome 扩展(教程含源码)
    WordPress还是Shopify?如何选择最适合您业务的网站建设平台?
  • 原文地址:https://blog.csdn.net/qq_37148353/article/details/133856878
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号