vue前端获取项目下的静态资源文件夹中的文件并下载

这篇具有很好参考价值的文章主要介绍了vue前端获取项目下的静态资源文件夹中的文件并下载。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.图片

前端项目/public/static/image文件夹下,两张图片,因为不会经常改变所以做成静态资源
前端下载本地静态文件,vue,前端,vue.js,javascript
从项目中获取这两张图片

//require.context(检索目录、是否检索子文件、正则表达式匹配的)
const requireContext = require.context('../../../public/static/image/', false, /^\.\/.*$/) 
requireContext.keys().forEach(key=>{
	// console.log(key)    // 输出./image.jpg
	let file = key.substring(2)
	this.imageList.push('../../../static/image/'+file)
})

html:

<!--展示轮播图-->
<van-swipe class="swipe" autoplay="3000">
	<van-swipe-item v-for="(item,index) in imageList" :key="index" :title="item.name">
		<van-image width="100%" height="5rem" :src="item" :alt="item"/>
	</van-swipe-item>
</van-swipe>

2.文件

前端项目的 \public\static\faultFile文件夹中放入模板文件:
前端下载本地静态文件,vue,前端,vue.js,javascript

实现效果:

前端下载本地静态文件,vue,前端,vue.js,javascript
代码:

前端下载使用< a >标签的自带的download下载

<el-dialog title="下载模板" :visible.sync="showDialog" width="600px" @close="close">
	<transition-group class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear" tag="ul" v-show="fileList.length>0">
		<li class="el-upload-list__item ele-upload-list__item-content" v-for="(item,index) in fileList" :key="index">
			<el-link :underline="false" target="_blank">
				<a class="el-icon-download" style="color:#1890ff;margin-left: 7px;" :href="process+'/static/faultFile/'+item" :download="item">{{item}}</a>
			</el-link>
		</li>
	</transition-group>
</el-dialog>

......js部门在下面

<style scoped>
.upload-file-uploader {
  margin-bottom: 5px;
}

.upload-file-list .el-upload-list__item {
  border: 1px solid #e4e7ed;
  line-height: 2;
  margin-bottom: 10px;
  position: relative;
}

.upload-file-list .ele-upload-list__item-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: inherit;
}

.ele-upload-list__item-content-action .el-link {
  margin-right: 10px;
}
</style>
export default {
  name: "DownTemplate",
  data(){
    return{
      //这个是部署前端包时的包名,访问静态文件的时候需要加上包名(和vue.config.js里的publicPath保持一致)
      process: process.env.VUE_APP_NAME,  
      showDialog: false,
      fileList: [],
    }
  },
  methods:{
  	//打开下载模板dialog
    open() {
      this.showDialog = true
      //获取文件夹中的文件名称,放进fileList中
      const files = require.context("../../../../../public/static/faultFile/", true, /\.doc$/); //只获取文件夹中.doc结尾的文件
      files.keys().forEach(item=>{
        this.fileList.push(item.substring(2))
      })
       
    },
    close(){
      this.fileList = []
    },
  },
}

参考文章:require.context()的用法详解文章来源地址https://www.toymoban.com/news/detail-524230.html

到了这里,关于vue前端获取项目下的静态资源文件夹中的文件并下载的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java获取某个文件夹下的所有文件

    目录 一.前言 二.获取文件夹下的文件路径 在我们平时编写开发文档的时候, 我们会获取到项目文件中的所有子文件来展示我们的源代码所储存的位置, 获取我们项目下的所有文件路径,  这时我们会如何用Java代码来获取我们项目下的所有文件呢, 今天我们来比编写一下代码 在

    2024年02月12日
    浏览(50)
  • 【Python】获取指定目录下的文件夹和文件

    我们经常会有对文件做批量处理的需求,获取指定目录下的文件夹和文件(有时需要获取所有文件,即子目录下的文件也需要获取)。Python 中扫描目录有两种方法: os.listdir() os.walk() 建立项目框架如下: 其中, test:项目文件夹名称,含有 aa子文件夹 和 main.py aa:文件夹,含

    2024年02月17日
    浏览(45)
  • Python小技巧【1】——获取指定文件夹下的所有文件【glob模块】

    glob模块 是Python标准库中一个重要的模块,主要用来 查找符合特定规则的目录和文件,并将搜索的到的结果返回到一个列表中。  1、常用函数glob() 返回符合匹配条件的所有文件的路径。  2、重要参数recursive recursive参数 代表是否递归调用,与特殊通配符 ** 一同使用,默认为

    2024年02月04日
    浏览(40)
  • Unity 获取文件夹下的预制体名称(可改成其他材质)

    其实获取并不难 可以说想起来API就能想起来 但是很多不常用API就会使人容易遗忘  废话就不多说了 首先命名空间必不可少的 接下来看主要代码的部分吧    我拿的我的Resources下的player文件夹下举个例子吧 这就完事了     你还想往下看看? 那就看看我的路径和演示效果吧

    2024年02月04日
    浏览(45)
  • Python os.listdir方法(获取文件夹目录下的内容)

    os.listdir 方法。参数为文件夹路径, 可以返回文件夹下的所有子文件、文件名称, 但不能返回子文件夹下的文件

    2024年02月14日
    浏览(38)
  • thinkphp6-配置设置与获取,Thinkphp6自定义配置文件以及调用(config文件夹下的配置)

    环境变量 设置环境变量 /.env [DATABASE] USERNAME = root PASSWORD = 123456 获取环境变量 app/controller/Index.php 访问测试 http://codeit.org.cn/index {“username”:“root”,“password”:“123456”} 1.在thinkphpconfig下新建一个test.php配置文件 .test.php文件内容 调用test.php配置文件 配置 配置设置 config/app.

    2024年02月13日
    浏览(36)
  • git如何仅合并项目下的某个文件夹

    假设目前在做的一个项目名为demoproject,目前版本为v1.0.0,标准开发都是在demoproject上进行的,但是有一个客户需要做定制化,需要将项目中的一些信息改为客户的,于是基于demoproject拉了一个v1.0.0-custom,然后将这个v1.0.0-custom交付给了客户。 过了一段时间,客户又提了新的需

    2024年01月21日
    浏览(38)
  • vue中使用window.open打开assets文件夹下的pdf文件

    需求:系统有个操作手册,点击会在浏览器新开个窗口并打开pdf文件。这个pdf文件存储在本地assets文件夹中。 文件结构: 注:直接使用window.open(文件路径)不能打开,需要在vue.config.js中配置所需文件 引入图中红框中的代码 页面中打开:(我是在初始化的时候就打开文件,没

    2024年02月10日
    浏览(41)
  • java 处理常量字符串过长 & springboot 项目读取 resouces 文件夹下的文件内容

    项目里面有一长串的加密字符串(最长的万多个字符),需要拼接作为参数发送给第三方。 如果我们使用 枚举 定义的话,idea 编译的时候就会出现编译报错 网上还有一个说法,说是编译器问题,修改 idea 工具的编译为 eclipse 即可。 但是结果我仍然不满意,所以我决定把他放在

    2023年04月13日
    浏览(92)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包