当前位置: 首页 > news >正文

郑州网站seo排名视频信号无线传输设备

郑州网站seo排名,视频信号无线传输设备,网站代理最快最干净,wordpress语言设置背景&#xff1a;如图一所示&#xff0c;最下面有一个黄色上传文件按钮&#xff0c;为手动上传而且上传区域有上传文件和上传文件夹的区分 所以需要在点击了上传文件夹做特殊处理使得el-upload可以上传文件夹 一、template区域 <el-uploadclass"upload-file"dra…

背景:如图一所示,最下面有一个黄色上传文件按钮,为手动上传而且上传区域有上传文件和上传文件夹的区分

所以需要在点击了上传文件夹做特殊处理使得el-upload可以上传文件夹

一、template区域

                        <el-uploadclass="upload-file"dragmultipleref="uploadRef":directory="true"v-show="uploadTypeIndex != 2 && fileArray.length == 0 && !isUpload":file-list="fileArray":auto-upload="false":show-file-list="false":before-upload="handleBeforeUpload":http-request="handleUploadFile":on-change="handleFileChange"accept="application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/pdf, text/plain, text/markdown"><div class="upload-node w-full h-full" @click="handlePreview"><app-svg-icon icon-name="filled-add" class="w-48 h-48 cursor-pointer upload-node-icon" /></div></el-upload>

二、逻辑区域 

01.在拖拽上传的区域绑定一个点击事件handlePreview,(注意不要直接绑定在el-upload区域,会被触发到两次)

const handlePreview = () => {let inputDom: any = nullnextTick(() => {if (document.querySelector('.el-upload__input') != null) {inputDom = document.querySelector('.el-upload__input')if (uploadTypeIndex.value == 1) {inputDom.webkitdirectory = true} else {inputDom.webkitdirectory = false}}})
}
//点击上传文件夹就将document.querySelector('.el-upload__input')获取到的webkitdirectory 设置为true,选择文件时浏览器就会只筛选文件夹
//点击上传文件就将document.querySelector('.el-upload__input')获取到的webkitdirectory 设置为false

02.此时在el-upload的上传文件方法下面就可以请求后端上传文件

 :http-request="handleUploadFile"

// 上传文件
const handleUploadFile = ({ file }) => {console.log(file, '---fie')//有几个文件就触发了几次uploadFileFunc(file)
}function uploadFileFunc(file: any) {const formData = new FormData()formData.append('field1', '111')formData.append('file', file)formData.append('field2', '222') //此次携带参数请求axios({url: 'yourUrl',method: 'POST',headers: {'Content-Type': 'application/x-www-form-urlencoded',},data: formData,}).then(res => {if (res != null && res.status == 200) {//成功后的逻辑}})
}

此时我发现我点击上传单个文件或者选取多个文件上传时是可以成功上传的,在handleUploadFile事件中打印的file长这样:webkitRelativePath:" "

上传文件夹时,打印出来的file长这样:webkitRelativePath: "新建文件夹/111111111111111111.txt"

后端直接返回提示 说找不到该文件,所以怀疑就是因为文件path的原因,所以直接将file的webkitRelativePath改为空字符串即可

但是由于file 对象的属性是只读的,所以无法直接修改 file.webkitRelativePath 的值。如果想在前端上传文件夹时去掉文件的路径信息,可以使用 File 构造函数创建一个新的文件对象,只保留文件本身,而不包含路径信息。

修改后的代码如下

// 上传文件
const handleUploadFile = ({ file }) => {console.log(file, '---fie')let fieClone = new File([file], file.name)//这里就可以文件夹中的每个文件都创建为一个新的 File 对象,并且只保留文件本身//有几个文件就触发了几次uploadFileFunc(fieClone)//传新的File对象
}function uploadFileFunc(file: any) {const formData = new FormData()formData.append('field1', '111')formData.append('file', file)formData.append('field2', '222') //此次携带参数请求axios({url: 'yourUrl',method: 'POST',headers: {'Content-Type': 'application/x-www-form-urlencoded',},data: formData,}).then(res => {if (res != null && res.status == 200) {//成功后的逻辑}})
}

http://www.yayakq.cn/news/647836/

相关文章:

  • 邯郸网络做网站不带优化的吗
  • 西安企业名录大全网络推广seo怎么做
  • 做的非常好的网站案例个人网站一年多少钱
  • 可以做网络攻防的实验的网站西部数码网站管理助手错误
  • 西安专业做网站的专业网站开发哪里好
  • 湛江网站建设策划太原网站的优化
  • 重庆市建设工程施工安全管理总站用wordPress搭建图片库
  • 企业网站建设前期准备做外贸的阿里巴巴网站是哪个
  • 做免费采集电影网站犯法吗水果网站策划方案
  • 网站建设费用无形资产如何摊销seo顾问收费
  • 北京 好的网站制作南昌搜索引擎优化
  • wordpress网站欣赏有货 那样的网站怎么做
  • 做民宿的网站有哪些wordpress织梦哪个好
  • it培训网站模板王也个人资料
  • asp添加网站管理员跨平台网站制作
  • 正在备案怎么建网站wordpress搬家中文图片
  • 特级a做爰网站腾讯云 安装wordpress
  • 网站建设实训心得体会2000字跳转短链接生成
  • 网站客户流失搜索引擎优化好做吗
  • 东莞免费做网站网站建设大师网络科技有限公司
  • 网站开发语言怎么查网络营销方式可分为无站点网络营销和什么
  • 莒县做网站的电话深圳建设网站企业
  • 可以做设计兼职的网站有哪些网站建设事项
  • 网站公司网站搭建wordpress转小程序
  • 网站怎么解析域名中国建筑人才招聘网官网
  • 做宣传册从哪个网站找素材西安百度搜索排名
  • 中文企业展示网站模板抖音小程序怎么开发自己的小程序
  • 网站建设做网站怎么做古建设计网站
  • 农安县住房和城乡建设厅网站门户网站app有哪些
  • 年轻的儿媳网站建设排名优化技巧