Vue上传文件操作(没有CV,认真看)

Vue上传文件操作(没有CV,认真看)项目场景: 通过vue上传文件基本操作问题描述:使用html上传文件时,很容易理解,那么vue文件上传呢?我们学了vue不可能还往里面写原生html的内容吧!先放代码再解释:<template><div><el-form:model=”form”><el-uploadaction=”url”:auto-upload=”false”:on-change=”onchanger”:fil

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

项目场景:

	通过vue上传文件基本操作

问题描述:

使用html上传文件时,很容易理解,那么vue文件上传呢?我们学了vue不可能还往里面写原生html的内容吧!

先放代码再解释:

<template>
  <div>
<el-form :model="form">
  <el-upload action="url" :auto-upload="false" :on-change="onchanger" :file-list="fileList" >
    <el-button size="small" plain>选择文件</el-button>
  </el-upload>
  <el-button size="small" @click="upload" >上传文件</el-button>
</el-form>
  </div>
</template>
<script> export default { 
     data(){ 
     return{ 
     name: "PageThree", form:{ 
     file:'' }, fileList:[] } }, methods: { 
     onchanger(file,fileList){ 
     console.log(file.raw) console.log(fileList) this.form.file=file.raw }, upload(){ 
     //单个文件上传 // let formData = new FormData() // formData.append('file', this.form.file) axios({ 
     // url //method: post //post不限制大小 // params:formData, // Content-Type: "multipart/form-data" // ) }) alert(this.form.file) } } } </script>

<style scoped> </style>

细节:

图示为单文件上传,可将form改为fileList实现多文件上传,这是通过axios异步上传,若是想直接上传可将内容为上传文件那个button

 <el-button size="small"  type="primary" >上传文件</el-button>
 //相当于Html中的submit
 

若是不理解某一部分,请留言。这是我参阅一大堆cv的博客后并实验得出来的,结论如下:

使用vue上传文件:
El-form组件:相当于html中的form标签:{属性:model=’form’双向绑定}
El-upload组件:文件上传组件,html表单中的input type=file>,
属性{ref=”注册引用信息” 
Action=”url” //上传的url
:limit=”限制个数”
:auto-upload=”false”//是否选择后自动上传
Accept=”*”//可选择的文件格式,若为.doc也就只能上传doc文件
:before-upload=”文件上传前的钩子函数”
:on-change=”文件改变时的钩子函数”
:on-exceed=”exceedFile”文件超出个数时的钩子函数
:on-success=”handleSuccess”文件上传成功的钩子函数
:on-error=”handleError”、、文件上传失败时的钩子函数
:file-list=”fileList” }
Ref属性的使用,当我们给某个组件添加ref属性后如ref=”demo”,
当我们在method使用该组件时,就可用$refs.demo使用该组件
如:<input type=”text” ref=”txt” >
<button @click=”change()”>
nethods{
Change(){
$refs.txt.value=’123’;
}
}
点击按钮后,对应的输入框的值就会发生变化。refs时容器中
所有注册过ref的集合;
其详细功能如下:
console.log(this.$refs.inp)//<input type="text" id="inp">
console.log(document.getElementById('inp'))//<input type="text" id="inp">
 这两种方法获得的都是Dom节点,而$refs相对document.getElementById的方法,会减少获取dom节点的消耗。
File-list//实现el-form的数据与data中的fileList动态绑定,
钩子函数://就是在某条件成立时,会触发相应的函数(method)
El-button plain>选择文件组件
El-button type=“primary”上传按钮
组合起来就能用了
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183450.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月10日 下午6:00
下一篇 2022年10月10日 下午6:00


相关推荐

  • Prometheus TSDB存储原理

    Prometheus TSDB存储原理Python 微信订餐小程序课程视频 https blog csdn net m0 article details Python 实战量化交易理财系统 https blog csdn net m0 article details Prometheus 包含一个存储在本地磁盘的时间序列数据库 同时也支持与远程存储系统集成 比如 grafanacloud 提供的免费云存储 API 只需将 remote write 接口信息填写在 Prome

    2025年7月16日
    7
  • a4纸两版的小册子怎么打印_word怎么打印小册子用a4

    a4纸两版的小册子怎么打印_word怎么打印小册子用a4用word打印小册子具体操作步骤:1、首先打开将要打印的文档,然后在菜单栏下面的快捷菜单栏,找到打印机的快捷图标,单击鼠标左键选择打开打印机。2、会弹出打印机设置对话框,可以进行打印前的一些细节的设置,由于是要选择打印一本小册子所以选择打印“所有页面”。3、在下面一栏是调整页面大小,也就是打印模式,选择“小册子”进行打印。4、然后下面是关于小册子的一些设置,按照自己的需要进行设置。5、设置完成以后…

    2025年9月22日
    9
  • 玩转OpenClaw|如何更新服务器OpenClaw版本?

    玩转OpenClaw|如何更新服务器OpenClaw版本?

    2026年3月13日
    2
  • linux改完环境变量,linux修改环境变量

    linux改完环境变量,linux修改环境变量etc profile 系统全局环境变量设定 所有用户共享 修改后 需要重启系统才能生效 bash profile bashrc 用户目录下的私有环境变量设定 常用来个性化定制功能 修改后 退出再登录生效 1 临时修改环境变量 exportPATH PATH opt project nodejs bin 只在本次登录有效 2 永久修改环境变量修改 etc profile 不建议 expo

    2026年3月19日
    2
  • GPT分区怎么分?利用diskgenius工具手动GPT分区详细教程?

    GPT分区怎么分?利用diskgenius工具手动GPT分区详细教程?

    2026年3月15日
    2
  • wps怎么做时间线_wps中的word文档如何制作时间轴「建议收藏」

    wps中的word文档如何制作时间轴很多小伙伴不知道wps中的word文档还可以制作时间轴哦,下面小编介绍一下具体办法。具体如下:1.打开一个空白的word文档,点击菜单栏的【插入】,单击选择一个带箭头的线条,在文档上面留一点空白写标题,然后插入线条拉到底部,还可以设置线条颜色,虚实等样式。2.点击工具栏中的【文本框】旁边的倒三角,再点击【多行文字】,插入一个大的文本框3.可以根据需要进行文…

    2022年4月10日
    199

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号