Vue:如何实现日志导出下载功能?

提示:当前日志导出下载功能,是基于后端接口返回的日志数据url地址进行操作。
提示:当前日志导出下载功能,是基于后端接口返回的日志数据url地址进行操作。
提示:当前日志导出下载功能,是基于后端接口返回的日志数据url地址进行操作。

文章目录


1.后端接口返回数据示例

javascript 复制代码
{
       "status": 0,
       "data": {
               "file_url": "http://test//tmp/log.bin"
       }
}

提示:基于类似上述文件地址 实现导出下载功能


2.关键代码

html 复制代码
  <button @click="exportLog()">导出</button >
javascript 复制代码
        exportLog(){
            logApi().then((res) => {
                if (res.status == 0) {
                    const now = new Date();
                    const year = now.getFullYear();
                    const month = ('0' + (now.getMonth() + 1)).slice(-2);
                    const day = ('0' + now.getDate()).slice(-2);
                    const hours = ('0' + now.getHours()).slice(-2);
                    const minutes = ('0' + now.getMinutes()).slice(-2);
                    const seconds = ('0' + now.getSeconds()).slice(-2);

                    const formattedTime = year + month + day + hours + minutes + seconds;
                    const link = document.createElement('a');
                    const blob = new Blob([res.data.file_url]);
                    link.style.display = 'none'
                    link.href = URL.createObjectURL(blob)
                    link.setAttribute('download', 'config_'+formattedTime+'.bin')
                    //setAttribute,第二个参数是定义导出文件的名称。
                    document.body.appendChild(link)
                    link.click()
                    document.body.removeChild(link)
                }
            });
		},
相关推荐
Van_Moonlight几秒前
RN for OpenHarmony 实战 TodoList 项目:今日任务数量统计
javascript·开源·harmonyos
xkxnq14 分钟前
第一阶段:Vue 基础入门(第 13天)
前端·javascript·vue.js
赵民勇33 分钟前
ES5中prototype和prototype.constructor详解
javascript
Van_captain43 分钟前
rn_for_openharmony常用组件_Tabs选项卡
javascript·开源·harmonyos
赵民勇44 分钟前
ES6中的const用法详解
javascript·es6
一勺菠萝丶1 小时前
Java 后端想学 Vue,又想写浏览器插件?
java·前端·vue.js
Irene19911 小时前
Vue 3中:setup 函数接收两个重要参数:props 和 context(附:setup 中无法访问 this 详解)
vue.js·setup
念你那丝微笑1 小时前
uView Plus + Vue3 + TypeScript + UniApp 正确引入 UnoCSS(避坑版)
vue.js·typescript·uni-app
Van_captain1 小时前
React Native for OpenHarmony Toast 轻提示组件:自动消失的操作反馈
javascript·开源·harmonyos
内存不泄露1 小时前
基于Spring Boot和Vue的宠物医院管理系统设计与实现
vue.js·spring boot·信息可视化