(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);
    }
}
相关推荐
anOnion1 小时前
构建无障碍组件之Menu Button pattern
前端·html·交互设计
用户47949283569152 小时前
claude Fable用不了?把Gpt 5.5pro接到你的claude code里
前端·后端
zhangxingchao4 小时前
Kotlin常用的Flow 操作符整理
前端
IT_陈寒6 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
Pedantic7 小时前
SwiftUI 手势笔记
前端·后端
橙子家7 小时前
浏览器缓存之【结构化数据库与缓存】: IndexedDB、Cache storage 和 Storage buckets
前端
user20585561518137 小时前
X6 中边悬浮置顶,规避 `mouseleave` 事件丢失问题
前端
李明卫杭州7 小时前
CSS aspect-ratio 属性完全指南
前端
Pedantic9 小时前
SwiftUI 手势层级(Gesture Hierarchy)详解
前端