Vue实战技巧:如何展示附件(PDF、MP4、Excel、Zip等)并修改名称下载
大家好,今天给大家分享一篇关于在Vue项目中展示附件(PDF、MP4、Excel、Zip等)并修改名称下载的教程。在实际开发过程中,这个功能非常实用,下面我们就一起来学习一下。
一、准备工作
首先,确保你的项目中已经安装了Vue和相关依赖。本文以Vue 2.x版本为例进行讲解。
二、文件展示
1、获取附件列表
假设我们有一个附件列表,存储在data中:
data() {
return {
fileList: [
{ name: '示例文档.pdf', url: 'http://example.com/pdf/1.pdf' },
{ name: '示例视频.mp4', url: 'http://example.com/video/1.mp4' },
{ name: '示例表格.xlsx', url: 'http://example.com/excel/1.xlsx' },
{ name: '示例压缩包.zip', url: 'http://example.com/zip/1.zip' }
]
};
}
2、 展示附件列表
在模板中,我们可以使用v-for指令来遍历fileList,展示附件名称和下载按钮:
<ul>
<li v-for="(file, index) in fileList" :key="index">
<span>{{ file.name }}</span>
<button @click="downloadFile(file.url, file.name)">下载</button>
</li>
</ul>
三、修改文件名并下载
1、创建下载方法
在methods中,添加一个downloadFile方法,用于修改文件名并触发下载:
methods: {
downloadFile(url, name) {
// 弹出输入框,让用户输入新的文件名
const newName = prompt('请输入新的文件名', name);
if (newName) {
// 创建a标签并设置下载属性
const link = document.createElement('a');
link.href = url;
link.download = newName;
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
}
}
2、调用下载方法
在模板中的下载按钮绑定点击事件,调用downloadFile方法:
<button @click="downloadFile(file.url, file.name)">下载</button>
四、总结
通过以上步骤,我们实现了在Vue项目中展示附件(PDF、MP4、Excel、Zip等)并修改名称下载的功能。这个功能在实际开发中非常实用,希望本文能对大家有所帮助。如有疑问,欢迎在评论区留言交流。