Vue如何下载本地静态资源static文件夹

 更新时间:2022年09月05日 15:01:42   作者:码农键盘上的梦  
这篇文章主要介绍了Vue如何下载本地静态资源static文件夹,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

下载本地静态资源static文件夹

下载静态文件方法

 <a href="/static/serviceAgreement.docx" rel="external nofollow"  rel="external nofollow"  download="下载"></a>

下载

项目需要下载本地的docx文档,文档是放在本地的没有在服务器,所以需要下载本地静态资源文件,开始把文件放在了这里src目录下的assets资源文件下

下载报错 找不到文件路径查找原因是因为项目用的是vue-cli3, 在打包的时候并不知道会把assets

下的文件打包在哪里,但是在build的时候发现在根目录下的文件是打包在当前路径下的

所以我们要把需要下载的静态资源放在public文件夹下的static文件夹下就可以了

你可能在输入路径的时候会提示你是src,而不直接是static,但是你还是要直接输入static这个路径

<a href="/static/serviceAgreement.docx" rel="external nofollow"  rel="external nofollow"  download="服务协议"></a>

需要注意的是:cli2需要把要下载的文件放在static下面;cli4需要将文件放在public里面才不会被打包。

注意:href 指向项目中pdf文件的路径(不要出现中文),download 就是重命名的文件名,不设置的话就是默认文件名

发现vue版本是 3.0+ 所有把要下载的 文件直接放到public文件夹中(最好英文名字)

下载本地static静态文件的踩坑

未发现文件

接手了一个别人做的官网项目,里面添加一些功能,国际化(国际化);接着有一个下载的功能,一般都是后端甩一个链接你放上面就好,但是这个小功能再去找一个后端搞,太夸张了吧,那我们就自己搞!

方法当然是非常多的,但是我试了几种,总是会报一个错误;“未发现文件”,还有的时候就是:房子同一个地址下面;非压缩包的文件可以正常下载,但是压缩包就不能下载;

上代码

最简单的就是利用a标签

<el-button round
><a href="/xlsx/test.xlsx" rel="external nofollow"  download="大赛报名表.xlsx"
  >报名参赛</a
></el-button>

会有人疑问路径是不是不对,

一般访问static里面的文件路径是:"…/…/static/zip/test.xlsx"

我开始也是这样写的,一直报错”未找到文件“,

后来看了cli版本,发现是cli4有一些变化,改成代码中的路径就可以了;

还有一个问题就是相同路径,普通文件可以下载,但是压缩包无法下载,(我试验过把压缩包和普通文件放到同一个路路径下依然有问题);

这个时候我们就不要在html里面去操作他了;给他一个点击事件

上代码

html

<el-button @click="download">
题目下载
</el-button>

script

methods: {
    download() {
      window.location.href = "/zip/subject.zip";
    },
  },

两个文件的路径

文件路径

做一下记录,以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue 浏览器本地存储的问题小结

    Vue 浏览器本地存储的问题小结

    这篇文章主要介绍了Vue 浏览器本地存储,LocalStorage 和 SessionStorage 统称为 WebStorage,存储大小一般支持5mb左右,但是不同的浏览器也有区别,具体内容介绍跟随小编一起看看吧
    2022-04-04
  • 详解.vue文件解析的实现

    详解.vue文件解析的实现

    这篇文章主要介绍了详解.vue文件解析的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-06-06
  • vue Echarts实现仪表盘案例

    vue Echarts实现仪表盘案例

    这篇文章主要为大家详细介绍了vue Echarts实现仪表盘案例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • el-select自定义指令实现触底加载分页请求options数据(完整代码和接口可直接用)

    el-select自定义指令实现触底加载分页请求options数据(完整代码和接口可直接用)

    某些情况下,下拉框需要做触底加载,发请求,获取option的数据,下面给大家分享el-select自定义指令实现触底加载分页请求options数据(附上完整代码和接口可直接用),感兴趣的朋友参考下吧
    2024-02-02
  • vue.js el-tooltip根据文字长度控制是否提示toolTip问题

    vue.js el-tooltip根据文字长度控制是否提示toolTip问题

    这篇文章主要介绍了vue.js el-tooltip根据文字长度控制是否提示toolTip问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • vue实现标签云效果的方法详解

    vue实现标签云效果的方法详解

    这篇文章主要介绍了vue实现标签云效果的方法,结合实例形式详细分析了vue标签云的实现技巧与相关操作注意事项,需要的朋友可以参考下
    2019-08-08
  • vue全局混入之状态判断是否执行点击

    vue全局混入之状态判断是否执行点击

    这篇文章主要介绍了vue全局混入之状态判断是否执行点击方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • Vue+iview+webpack ie浏览器兼容简单处理

    Vue+iview+webpack ie浏览器兼容简单处理

    这篇文章主要介绍了Vue+iview+webpack ie浏览器兼容简单处理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • vue template中slot-scope/scope的使用方法

    vue template中slot-scope/scope的使用方法

    今天小编就为大家分享一篇vue template中slot-scope/scope的使用方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • vue 将页面公用的头部组件化的方法

    vue 将页面公用的头部组件化的方法

    本篇文章主要介绍了vue 将页面公用的头部组件化的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12

最新评论