(vue)前端下载本地excel文件

(vue)前端下载本地excel文件


  • 已实现

先将文件放入public文件夹下的excel文件夹

html

bash 复制代码
div class="download-btn">
    <el-button 
        type="primary" 
        icon="el-icon-download"
        @click="downloadFile"
        :loading="downloading">
        {{ downloading ? '下载中...' : '下载模板' }}
    </el-button>
    <div class="progress-bar" :style="{width: progress + '%'}"></div>
</div>

<div class="download-complete" :style="{display: downloadComplete ? 'block' : 'none'}">
    <i class="el-icon-success"></i> 下载完成!
</div>

js

bash 复制代码
data: {
    downloading: false,
    progress: 0,
    downloadComplete: false
},
methods: {
    downloadFile() {
        this.downloading = true;
        this.progress = 0;
        this.downloadComplete = false;
        
        // 模拟下载进度
        const interval = setInterval(() => {
            this.progress += 10;
            if (this.progress >= 100) {
                clearInterval(interval);
                this.downloading = false;
                this.downloadComplete = true;
                
                // 实际下载文件
                const link = document.createElement('a');
                link.href = '/excel/信息导入模板.xlsx';
                link.download = '信息导入模板.xlsx';
                link.click();
                
                // 3秒后隐藏完成提示
                setTimeout(() => {
                    this.downloadComplete = false;
                }, 3000);
            }
        }, 200);
    }
}
相关推荐
ywf12152 小时前
前端的dist包放到后端springboot项目下一起打包
前端·spring boot·后端
恋猫de小郭2 小时前
2026,Android Compose 终于支持 Hot Reload 了,但是收费
android·前端·flutter
hpoenixf8 小时前
2026 年前端面试问什么
前端·面试
还是大剑师兰特8 小时前
Vue3 中的 defineExpose 完全指南
前端·javascript·vue.js
泯泷8 小时前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
mengchanmian9 小时前
前端node常用配置
前端
华洛9 小时前
利好打工人,openclaw不是企业提效工具,而是个人助理
前端·javascript·产品经理
xkxnq9 小时前
第六阶段:Vue生态高级整合与优化(第93天)Element Plus进阶:自定义主题(变量覆盖)+ 全局配置与组件按需加载优化
前端·javascript·vue.js
A黄俊辉A10 小时前
vue css中 :global的使用
前端·javascript·vue.js
小码哥_常10 小时前
被EdgeToEdge适配折磨疯了,谁懂!
前端