avue crud upload组件 增加自定义参数

2024-03-02 01:58

本文主要是介绍avue crud upload组件 增加自定义参数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在某项目中使用avue crud upload 控件实现文件上传。想要携带参数,依据文档可配置data参数,应该于upload-before事件中进行data赋值,以达到修改参数的目的。

上源码:crud upload column

// 子grid上传信息表格(带upload字段)
export const tableUploadOption = {border: true,index: false,indexLabel: '序号',stripe: true,menuAlign: 'center',align: 'center',viewBtn: false,searchMenuSpan: 6,editBtn: false,saveBtn: false,addBtn: true,column: [{label: '编号',prop: 'id',hide: true,addDisplay: false},{hide: true,label: '附件上传',prop: 'imgUrl',type: 'upload',loadText: '附件上传中,请稍等',span: 24,props: {label: "fileName",value: "url",},propsHttp: {res: 'data',name: "fileName",url: "url"},tip: '上传同步至文件服务器',action: "/bzyz/apply/upload",data: {}  //指定上传参数},...]
}

vue 代码:

<avue-crud ref="upload":page.sync="page2":data="tableData2":permission="permissionList2":table-loading="tableLoading2":option="tableOption2"@on-load="getList2"@search-change="searchChange2"@refresh-change="refreshChange2"@size-change="sizeChange2"@current-change="currentChange2"@row-del="rowDel2":upload-error="uploadError":upload-delete="uploadDelete":upload-before="uploadBefore"  //本应在该事件中完成上传参数data赋值:upload-after="uploadAfter"><template slot="menuLeft"><!-- 除了要求有上传权限,还要求选中父级记录 --><el-buttonv-show="permissions.bzyz_apply_upload &&  (selectionList && selectionList.id >=0)"type="primary"icon="el-icon-upload"size="small"plain@click="$refs.upload.rowAdd()">上传</el-button></template></avue-crud>

对应的事件代码:

uploadBefore(file, done, loading, column) {column.data = {parentId: 123456};  //设置上传参数done();
},

但实际操作过程中,一直出现本次上传的参数为前一次传参的data数据,慢一拍。

因此使用watch监听解决,在上传之前(upload-before事件之前)进行data修改。

watch: {// 监控选中的父级记录,当父级记录变化时重新设置upload上传参数selectionList (val, oldVal) {let uploadUrl = this.findObject(this.tableUploadOption.column, 'imgUrl');uploadUrl.data = {pid: val.id}; //找到该数据直接修改this.refreshChange(); //查询刷新,省略代码}

注:在本示例中selectionList 为 父级选中的行记录,即为当选中父级记录的时候进行子Grid中upload参数设置。因此该参数为在触发upload上传方法前所需监控的变量。

依据avue issue也发现了类似的与upload相关问题,如果更新版本依然无效可以尝试上述方法。

这篇关于avue crud upload组件 增加自定义参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/764566

相关文章

python中的显式声明类型参数使用方式

《python中的显式声明类型参数使用方式》文章探讨了Python3.10+版本中类型注解的使用,指出FastAPI官方示例强调显式声明参数类型,通过|操作符替代Union/Optional,可提升代... 目录背景python函数显式声明的类型汇总基本类型集合类型Optional and Union(py

聊聊springboot中如何自定义消息转换器

《聊聊springboot中如何自定义消息转换器》SpringBoot通过HttpMessageConverter处理HTTP数据转换,支持多种媒体类型,接下来通过本文给大家介绍springboot中... 目录核心接口springboot默认提供的转换器如何自定义消息转换器Spring Boot 中的消息

Go语言使用Gin处理路由参数和查询参数

《Go语言使用Gin处理路由参数和查询参数》在WebAPI开发中,处理路由参数(PathParameter)和查询参数(QueryParameter)是非常常见的需求,下面我们就来看看Go语言... 目录一、路由参数 vs 查询参数二、Gin 获取路由参数和查询参数三、示例代码四、运行与测试1. 测试编程路

Python自定义异常的全面指南(入门到实践)

《Python自定义异常的全面指南(入门到实践)》想象你正在开发一个银行系统,用户转账时余额不足,如果直接抛出ValueError,调用方很难区分是金额格式错误还是余额不足,这正是Python自定义异... 目录引言:为什么需要自定义异常一、异常基础:先搞懂python的异常体系1.1 异常是什么?1.2

Python lambda函数(匿名函数)、参数类型与递归全解析

《Pythonlambda函数(匿名函数)、参数类型与递归全解析》本文详解Python中lambda匿名函数、灵活参数类型和递归函数三大进阶特性,分别介绍其定义、应用场景及注意事项,助力编写简洁高效... 目录一、lambda 匿名函数:简洁的单行函数1. lambda 的定义与基本用法2. lambda

Linux中的自定义协议+序列反序列化用法

《Linux中的自定义协议+序列反序列化用法》文章探讨网络程序在应用层的实现,涉及TCP协议的数据传输机制、结构化数据的序列化与反序列化方法,以及通过JSON和自定义协议构建网络计算器的思路,强调分层... 目录一,再次理解协议二,序列化和反序列化三,实现网络计算器3.1 日志文件3.2Socket.hpp

C语言自定义类型之联合和枚举解读

《C语言自定义类型之联合和枚举解读》联合体共享内存,大小由最大成员决定,遵循对齐规则;枚举类型列举可能值,提升可读性和类型安全性,两者在C语言中用于优化内存和程序效率... 目录一、联合体1.1 联合体类型的声明1.2 联合体的特点1.2.1 特点11.2.2 特点21.2.3 特点31.3 联合体的大小1

springboot自定义注解RateLimiter限流注解技术文档详解

《springboot自定义注解RateLimiter限流注解技术文档详解》文章介绍了限流技术的概念、作用及实现方式,通过SpringAOP拦截方法、缓存存储计数器,结合注解、枚举、异常类等核心组件,... 目录什么是限流系统架构核心组件详解1. 限流注解 (@RateLimiter)2. 限流类型枚举 (

SpringBoot 异常处理/自定义格式校验的问题实例详解

《SpringBoot异常处理/自定义格式校验的问题实例详解》文章探讨SpringBoot中自定义注解校验问题,区分参数级与类级约束触发的异常类型,建议通过@RestControllerAdvice... 目录1. 问题简要描述2. 异常触发1) 参数级别约束2) 类级别约束3. 异常处理1) 字段级别约束

Olingo分析和实践之OData框架核心组件初始化(关键步骤)

《Olingo分析和实践之OData框架核心组件初始化(关键步骤)》ODataSpringBootService通过初始化OData实例和服务元数据,构建框架核心能力与数据模型结构,实现序列化、URI... 目录概述第一步:OData实例创建1.1 OData.newInstance() 详细分析1.1.1