vue 下载项目中静态文件
时间: 2023-12-27 16:04:15 浏览: 30
如果你的静态文件是放在 Vue.js 项目的 `public` 目录下,则可以直接通过文件的相对路径进行下载。例如,如果你的静态文件是放在 `public/files` 目录下的 `example.pdf` 文件,则可以使用如下代码进行下载:
```html
<template>
<div>
<h2>文件下载示例</h2>
<button @click="downloadFile">下载文件</button>
</div>
</template>
<script>
export default {
methods: {
downloadFile() {
// 文件相对路径
const relativePath = '/files/example.pdf';
// 创建 a 标签
const link = document.createElement('a');
// 设置 a 标签的 href 属性(文件下载地址)
link.href = relativePath;
// 设置 a 标签的 download 属性(文件名)
link.download = 'example.pdf';
// 模拟 a 标签的点击事件
link.click();
}
}
}
</script>
```
在上述代码中,我们通过文件的相对路径 `/files/example.pdf` 设置了文件的下载地址,然后将文件名设置为 `example.pdf`,最后模拟 a 标签的点击事件进行下载。需要注意的是,文件的相对路径应该以 `/` 开头,否则会被解析为相对于当前页面的路径。
如果你的静态文件不是放在 `public` 目录下,则可以通过配置 webpack 的 `copy-webpack-plugin` 插件来将静态文件复制到 `public` 目录下,然后再进行下载。具体操作方法可以参考 [copy-webpack-plugin 官方文档](https://webpack.js.org/plugins/copy-webpack-plugin/)。