位置: IT常识 - 正文

vue关于下载文件常用的几种方式(vue文件下载功能)

编辑:rootadmin
这篇文章主要介绍了vue关于下载文件常用的几种方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教 目录

推荐整理分享vue关于下载文件常用的几种方式(vue文件下载功能),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue下载项目中的文件,vue实现文件下载功能,vue实现下载文件,vue文件下载功能,vue中下载文件,vue实现文件下载功能,vue文件下载直接在界面展示,vue实现文件下载功能,内容如对您有帮助,希望把文章链接给更多的朋友!

vue下载文件常用方式直接打开我们可以自己封装一个方法vue常用的命令创建vue项目常用命令vue项目部署启动项目总结vue下载文件常用方式直接打开

直接打开是指我们直接使用window.open(URL)的方法

优点:简单操作缺点:没办法携带token我们可以自己封装一个方法

比如如下:

import axios from "axios"import * as auth from '@/utils/auth.js'let ajax = axios.create({    baseURL: process.env.VUE_APP_BASE_API,    timeout: 100000});ajax.interceptors.request.use(config => {        config.headers = {            Authorization: auth.getToken(),            // OrgId: auth.getUser().orgId,            // UserId: auth.getUser().id,        }        return config    },    err => {        return Promise.reject(err)    })let downloadFile = async (url, formData, options) => {    await ajax.post(url, formData, {responseType: 'arraybuffer'}).then(resp => download(resp, options))}let getFile = async (url, options) => {    await ajax.get(url, {responseType: 'blob'}).then(resp => download(resp, options))}let download = (resp, options) => {    let blob = new Blob([resp.data], {type: options.fileType ? options.fileType : 'application/octet-binary'})    //创建下载的链接    let href = window.URL.createObjectURL(blob)    downloadBlob(href, options.fileName)}let downloadBlob = (blobUrl, fileName, revokeObjectURL) => {    let downloadElement = document.createElement('a')    downloadElement.href = blobUrl    //下载后文件名    downloadElement.download = fileName    document.body.appendChild(downloadElement)    //点击下载    downloadElement.click()    //下载完成移除元素    document.body.removeChild(downloadElement)    if (revokeObjectURL == null || revokeObjectURL) {        //释放掉blob对象        window.URL.revokeObjectURL(blobUrl)    }}let getDownloadFileUrl = async (url, fileType) => {    let blob    await ajax.get(url, {responseType: 'blob'}).then(resp => {        blob = new Blob([resp.data], {type: fileType ? fileType : 'application/octet-binary'});    })    return window.URL.createObjectURL(blob);}let getDownloadFileUrlByPost = async (url, data, fileType) => {    let blob    await ajax.post(url, data, {responseType: 'blob'}).then(resp => {        blob = new Blob([resp.data], {type: fileType ? fileType : 'application/octet-binary'});    })    return window.URL.createObjectURL(blob);}let getDownloadFileBlob = async (url, fileType) => {    let blob    await ajax.get(url, {responseType: 'blob'}).then(resp => {        blob = new Blob([resp.data], {type: fileType ? fileType : 'application/octet-binary'});    })    return blob;}export default {    ajax,    downloadFile,    getFile,    getDownloadFileUrl,    getDownloadFileUrlByPost,    getDownloadFileBlob,    downloadBlob}

然后在我们调用的那个页面中直接引入使用就好啦

//先引用import ajax from '../../utils/ajax.js'//使用ajax.downloadFile('URL',null,{下载的文件名称})

这样看是不是就挺容易的

vue常用的命令创建vue项目常用命令

如果vue项目出错了你可以把依赖删掉,清理一下缓存在重新安装

清理缓存 npm cache clean --force

第一步,创建淘宝镜像,安装npm镜像(如果已经安装的就直接第二步就可以了)

npm install -g cnpm --registry=https://registry.npm.taobao.org

第二步, 全局安装vue-vli

npm install --g vue-cli

第三步, 创建一个vue项目

vue init webpack 项目名

vue项目部署npm install启动项目npm run dev/npm run serve

1、安装element_ui

npm i element-ui -S

安装成功后在main.js中到导入element-ui,并使用

    import ElementUI from 'element-ui';    import 'element-ui/lib/theme-chalk/index.css';    Vue.use(ElementUI);

2、安装vue_router

npm install vue-router --save 

安装完成如果没有文件夹router(一般都有vue2.0下需要自己选择安装,vue3.0创建有)我们直接创建index.js文件。文件放入以下配置

import Vue from 'vue'import VueRouter from 'vue-router';Vue.use(VueRouter); import XXX "../src/components/xxx";  const routes = [  {    path:'/'    component: XXX  }, ] const router = new VueRouter({  routes}) export default router

要在main.js中应用router.js文件。我们需要在中放入router

import router from "../router";    new Vue({  router,  el: '#app',  components: { App },  template: '<App/>'})vue关于下载文件常用的几种方式(vue文件下载功能)

3、 安装axios组件,安装命令如下:

npm install --save vue-axios  

在main.js文件下引入如下代码:

import axios from 'axios'import VueAxios from 'vue-axios'Vue.use(VueAxios, axios)总结

1.安装vue-cli

npm install --global vue-cli

2.创建一个基于 webpack 模板的新项目

vue init webpack 项目名称

3.运行:npm run dev

4.安装依赖:cd 项目名称 npm install

5.安装vue-resource插件(通过XMLHttpRequest或JSONP发起请求并处理响应 //get post请求):npm install vue-resource --save

6.安装路由插件:

npm install vue-router --save

7.安装element-ui:

npm i element-ui -S(安装好之后要记得在main.js中引入)

8.安装axios npm install axios --save

9.安装Echarts npm install echarts --save

10.如果想要终止终端(cmd)正在运行的命令,则ctrl +c

11.安装指定版本jquery

npm i jquery@版本号

12.若项目中node_modules文件被删除,使用 npm install 即能把package.json中的dependencies中所有依赖项都下载回来

以上为个人经验,希望能给大家一个参考,也希望大家多多支持本站。

本文链接地址:https://www.jiuchutong.com/zhishi/304144.html 转载请保留说明!

上一篇:2022年可在苹果笔记本M1和M2芯片的Macos系统上运行的手机Alook浏览器-8倍速破解版-电脑学习网(苹果2021年在中国不能用了吗)

下一篇:时间格式的转换---全(时间格式转换成小时数)

  • 简易计税方法能开专用发票吗
  • 消费税为什么是减
  • 施工劳务企业要交增值税吗
  • 小规模30万免税是含税还是不含税
  • 法人名下的车辆费用如何进公司帐
  • 购买固定资产时的运费
  • 成立企业的步骤
  • 持有待售固定资产为什么不计提折旧
  • 交易性金融资产是什么意思
  • 委托加工设备
  • 我的初级备考经历怎么写
  • 股东转入的钱算什么
  • 延递所得税资产减少
  • 增值税专用发票怎么开
  • 土地+n
  • 不开票收入怎么报税
  • 成本控制的基本原则包括
  • 跨年度的应收账款少记了怎么办
  • 红字冲回怎么做账
  • 可供出售金融资产是指什么
  • 残保金每年什么时候申报缴纳
  • 筹建期间发生的费用计入哪里
  • 购买车辆保险怎么入账
  • 简单了解php编程软件
  • 转出未交增值税借方余额表示什么
  • 最轻便的蓝光刻录机品牌
  • 兼职如何交税款
  • 特许权使用费的增值税税率是多少
  • 如何解决php使用延迟问题
  • php使用正则表达式提取abcdef
  • 淘宝镜像网站
  • nlp自然语言处理框架
  • 租赁增值税发票税率
  • 劳务费过账
  • 事业收入如何确认
  • 申报财务报表利润怎么写
  • 会计成本确认
  • 财务费用手续费在借方还是贷方
  • 个人独资企业核算方式
  • 个人所得税报税孩子的夫妻双方都报吗
  • 增值税补充申报表不填可以吗
  • 企业向个人借款协议范本
  • 出口结汇有哪些常用方法?
  • 不动产作价出资入股登记收件
  • sqlserver并发怎么处理
  • Windows下Postgresql数据库的下载与配置方法
  • 解决mysql数据库异常断电
  • mysql索引命令
  • 哪些合同不需要缴纳印花税的通知
  • 固定资产投资入库申报材料
  • 业务招待费扣除标准是多少
  • 资本金利润率正常范围
  • 广告收入计入哪个科目
  • 还账准备计提方法
  • 公司的软件服务器设置什么意思啊
  • 没有销货清单的发票可以报销吗
  • 企业净资产怎么填
  • mac系统怎么样
  • shell 日期运算
  • win7旗舰版系统激活码
  • winxp系统怎么装
  • ubuntu系统安装教程
  • mac新建窗口快捷键
  • winxp系统修复 不重装软件
  • win10系统怎么回滚
  • window打开
  • ipcservice.dll是什么?
  • 怎么把喜欢的图片设置成电脑壁纸
  • 方块滚动代码怎么写
  • unicode和utf–8 编码
  • python在web上的应用
  • ubuntu安装选哪个
  • shell脚本的fi
  • 巧用dos命令合并图层
  • 网页css加载失败
  • python语言面向过程吗
  • python文件遍历
  • 职称申报密码找回
  • 转让土地的土地增值税
  • 税收征管工作的基本目标
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设