美文网首页
优化input type=file类型的ui方式

优化input type=file类型的ui方式

作者: 说好的幸福2020 | 来源:发表于2019-06-17 11:58 被阅读0次

前提,不考虑该类型的选择就上传问题(那样直接考虑ui组件库,如element-ui中的upload组件),该文仅仅是实现原生 input type=file的ui优化

以vue项目为例,基于elemnt-ui开发
<el-button id="importCsv"  type="primary" @click="importCSV">导入csv</el-button>
<input  type="file" id="uploadCsv"  v-model="addOrEditForm.filePath" accept="*/*" @change="fileChange"/>

id为uploadCsv 元素要设置隐藏
点击 id为importCsv的按钮,触发id为 uploadCsv的click事件执行。
需要处理id为uploadCsv的元素的change事件 fileChange(视具体业务定)
function fileChange() {
    const strVal = $("#uploadCsv").val();  // 显示的文件路径地址
    this.addOrEditForm.file = $("#uploadCSV").get(0).files[0];  // 实际需要上传的file类型数据
    this.addOrEditForm.filePath = strVal;
    if (strVal.length) $("#importCsv").html(strVal);
},

绑定filePath的目的是为了对表单是否选择的上传文件做判断使用,

v-model="addOrEditForm.filePath" 注意:v-model绑定到这里不能绑定file文件,只能绑定filename,否则会报错

相关文章

网友评论

      本文标题:优化input type=file类型的ui方式

      本文链接:https://www.haomeiwen.com/subject/antafctx.html