avue 表单绑定值;avue表单项根据某项的值去联动显隐或是联动下拉数据;avue select切换与另外一个select的options联动

news2024/11/22 11:21:56

效果:发布type为shp时 数据相关的都隐藏,当发布type为postgis时则显示

 

1.avue表单绑定值

html

<avue-form :option="option" v-model="publishForm"></avue-form>

 js data中定义

 data() {
        return {
            publishForm: {},
            option: {
                labelWidth: 120,
                column: [
                    {
                        label: '发布Type',
                        prop: 'publishType',
                        type: 'select',
                        dicData: [{
                            label: 'shp',
                            value: 'shp'
                        }, {
                            label: 'postgis',
                            value: 'postgis'
                        }]
                    },
                    {
                        label: '数据库地址IP',
                        prop: 'dataBaseIp',
                        display: false,
                    },
                    {
                        label: '数据库密码',
                        prop: 'dataBasePassword',
                        display: false,
                    },
                    {
                        label: '数据账号',
                        prop: 'dataAccount',
                        display: false,
                    },
                    {
                        label: '数据库名',
                        prop: 'dataBaseName',
                        display: false,
                    },
                ]
            }
        }
    },   

 publishForm中就是表单中收集的值,后面将其中的数据与后端交互。

2.avue表单项根据某项的值去联动显隐

  watch: {
        'publishForm.publishType'() {
            if (this.publishForm.publishType === 'postgis') {
                const columnIp = this.findObject(this.option.column, "dataBaseIp")
                const columnPassword = this.findObject(this.option.column, "dataBasePassword")
                const columnAccount = this.findObject(this.option.column, "dataAccount")
                const columnName = this.findObject(this.option.column, "dataBaseName")
                columnIp.display = true
                columnPassword.display = true
                columnAccount.display = true
                columnName.display = true
            } else {
                const columnIp = this.findObject(this.option.column, "dataBaseIp")
                const columnPassword = this.findObject(this.option.column, "dataBasePassword")
                const columnAccount = this.findObject(this.option.column, "dataAccount")
                const columnName = this.findObject(this.option.column, "dataBaseName")
                columnIp.display = false
                columnPassword.display = false
                columnAccount.display = false
                columnName.display = false
            }
        }
    },

注意:其中要显隐的表单项要给一个display初始状态值。

实现avue表单项根据某项的值 去联动 其他表单项下拉也是同理:

const column = this.findObject(this.option.group, "roleId");

column.dicData = res.data.data;



const deptColumn = this.findObject(this.userOption.column, 'deptId')

deptColumn.dicUrl = `/api/blade-system/dept/select?userId=${userId}`

3.avue select切换与另外一个select的options联动

               {
                        label: "发布空间",
                        prop: "test",
                        type: "select",
                        dicUrl: "/api/blade-system/dict-biz/dictionary?code=GIS_WORKSPACE",
                        props: {
                            label: "dictValue",
                            value: "dictKey"
                        },
                        event: {
                            change: (val) => {
                                if (!val) return
                                if (val) {
                                    if (val == 'VECTOR') {
                                        this.typeValue = 'GIS_VECTOR_STYLE'
                                    } else if (val == 'IMAGE') {
                                        this.typeValue = 'GIS_IMAGE_STYLE'
                                    } else if (val == 'LARGE_SCREEN') {
                                        this.typeValue = 'GIS_LARGE_SCREEN_STYLE'
                                    }
                                    getDicData(this.typeValue).then((res) => {
                                        const column = this.findObject(this.option.column, "shpStyle")
                                        column.dicData = res.data.data
                                    })
                                }
                            },
                        },
                        rules: [{
                            required: true,
                            message: "请选择发布空间",
                            trigger: "change"
                        }],
                    },
                    {
                        label: "图层样式 ",
                        prop: "shpStyle",
                        type: "select",
                        props: {
                            label: "dictValue",
                            value: "dictKey"
                        },
                        dicData: [],
                        rules: [{
                            required: true,
                            message: "请选择图层样式",
                            trigger: "change"
                        }],
                    },
props

dicData

先后顺序不能变 否则会报错

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/748545.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Go语言基础教程:变量、基本数据类型、输出、注释、运算符、if-else条件判断、函数

文章目录 一、变量的使用1.1 定义变量1.2 常量1.3 变量的赋值与内存相关 二、变量基本类型2.1 有符号整型2.2 无符号整型2.3 string类型2.4 bool类型 三、输出3.1 常用打印功能3.2 格式化输出3.3 内置输出方法与fmt的区别 四、注释五、运算符六、条件语句6.1 基本使用6.2 条件嵌…

12.7 跳转与存储器访问指令

目录 跳转指令 方式一 方式二 方式三 程序返回 ARM指令的条件码 比较指令 内存访问指令&#xff08;一&#xff09; load&#xff08;LD加载&#xff09;/srore&#xff08;ST存储&#xff09;指令&#xff1a;访问&#xff08;读写&#xff09;内存 写内存 读内存 …

leetcode:寻找数组的中心下标

寻找数组的中心下标 easy 给你一个整数数组 nums &#xff0c;请计算数组的 中心下标 。 数组 中心下标 是数组的一个下标&#xff0c;其左侧所有元素相加的和等于右侧所有元素相加的和。 如果中心下标位于数组最左端&#xff0c;那么左侧数之和视为 0 &#xff0c;因为在下标…

git bash设置字体大小

背景 git bash默认字体太小了&#xff0c;每次读信息都要伸头盯着屏幕&#xff0c;很不自在&#xff0c;不符合我的风格&#xff0c;so let’s do it&#xff01; 修改前的git bash&#xff1a; 正确的打开方式 1、在任意目录下&#xff0c;右键选择“Git Bash Here”&…

这5款能带来意想不到效果的小工具,你用过几款?

​ 有时候一些小工具&#xff0c;能给你带来一些意想不到的效果&#xff0c;我们来看看下面这5款工具&#xff0c;你又用过其中几款呢&#xff1f; 数据标注平台——Labelbox ​ Labelbox是一个数据标注平台&#xff0c;可以帮助你创建和管理高质量的训练数据&#xff0c;用于…

【新版系统架构】系统架构设计师教程全篇知识点提炼

第一章-绪论 架构的定义&#xff1a; 1、架构体现在组件中的一个系统的基本组织、彼此的关系和环境的关系及指导它的设计和发展的原则 2、系统是组织起来完成某一特定功能或一组功能的组件集 3、环境或者上下文决定了对这个系统的开发、运作、政策以及会对系统造成其他影响的…

Map集合以及它的实现类们

Map集合 Map集合的概念理解 在现实生活中&#xff0c;我们经常会碰见一对一标识的例子&#xff1a;如身份证号与个人、IP地址与主机名等。这些一一对应的关系就是映射。在Java之中也能为我们的对象添加一个“一”的对应关系—Map<K,V>集合&#xff0c;位于java.util.Ma…

113.(cesium篇)cesium卷帘分屏效果

地图之家总目录(订阅之前必须详细了解该博客) 地图之家:cesium+leaflet+echart+地图数据+地图工具等相关内容的介绍 文章末尾处提供保证可运行完整代码包,运行如有问题,可“私信”博主。 效果如下所示: cesium卷帘分屏效果 下面献上完整代码,代码重要位置会做相应解释…

实战演练Python数据分析[pandas]

文章目录 [TOC](文章目录) 前言一、MoviesLens数据集二、美国1880-2010年的婴儿名字三、美国农业部视频数据库四、2012年联邦选举委员会数据库总结 前言 本篇文章出自于《利用Python进行数据分析》示例数据 请结合提供的示例数据&#xff0c;分析代码的功能&#xff0c;并进行…

微服务优雅上下线的实践方法

导语 本文介绍了微服务优雅上下线的实践方法及原理&#xff0c;包括适用于 Spring 应用的优雅上下线逻辑和服务预热&#xff0c;以及使用 Docker 实现无损下线的 Demo。同时&#xff0c;本文还总结了优雅上下线的价值和挑战。 作者简介 颜松柏 腾讯云微服务架构师 拥有超过…

Win10下安装TensorRT

Win10下安装TensorRT 前言相关介绍Win10下安装TensorRT查看cuda版本下载tensorrt8.xx版本&#xff0c;适用于Windows的cuda11.x的版本解压下载好的压缩包使用pip下载wheel文件遇到新问题解决方法 测试TensorRT是否安装成功 参考 前言 由于本人水平有限&#xff0c;难免出现错漏…

WAS 9.0 ND 命令行安装-基于LINUX 8

WAS 9.0 安装文件准备如下&#xff1a; gtk.x86_64_1.8.9004.20190423_2015.zip ----IM安装源文件 sdk.repo.8035.java8.linux.zip ----JAVA安装源文件 was.repo.90501.nd.zip ----WAS安装源文件 …

深度学习(27)——YOLO系列(6)

深度学习&#xff08;27&#xff09;——YOLO系列&#xff08;6&#xff09; 嗨&#xff0c;好久不见&#xff0c;昨天结束了yolov7的debug过程&#xff0c;真的在尽力句句理解&#xff0c;我想这应该是我更新的yolo系列的最后一篇&#xff0c;但是仅限于yolo&#xff0c;dete…

Day43: 123.买卖股票的最佳时机III,188.买卖股票的最佳时机IV

目录 123.买卖股票的最佳时机III 思路 188.买卖股票的最佳时机IV 思路 123.买卖股票的最佳时机III 123. 买卖股票的最佳时机 III - 力扣&#xff08;LeetCode&#xff09; 思路 1. 确定dp数组及其下标含义 一天一共就有五个状态&#xff0c; 没有操作 &#xff08…

白皮书精彩章节:从冬奥会看我们如何做到与“双碳”目标偕行

以下案例来自于《数字孪生世界白皮书&#xff08;2023版&#xff09;》 领取方式&#xff1a;公众号「EasyV数字孪生」后台回复「白皮书」即可领取&#xff01; 一、“双碳”提出背景 1、正式提出 在2020年9月22日75届联合国大会上&#xff0c;中国首次在国际公开场合提出…

Vue计算属性与监听器

文章目录 计算属性配置项 computedHTML 结构Vue 实例数据方法计算属性绑定数据和方法完整代码 监听器配置项 watch简单类型写法深度监听写法 计算属性配置项 computed 使用 Vue 实现一个商品价格计算器&#xff0c;设置一个初始单价&#xff0c;初始数量为 1&#xff0c;用户可…

开源外卖点餐系统源码:提升餐饮行业数字化转型

随着数字化时代的到来&#xff0c;餐饮行业正积极寻求数字化转型的方式来适应市场需求。开源外卖点餐系统源码成为推动餐饮行业数字化转型的有力工具。本文将介绍一个开源外卖点餐系统的源码&#xff0c;并解析其中的关键代码&#xff0c;展示如何利用开源源码来提升餐饮行业的…

漏洞攻击 --- TCP -- 半开攻击、RST攻击

TCP半开攻击&#xff08;半连接攻击&#xff09; --- syn攻击 &#xff08;1&#xff09;定义&#xff1a; sys 攻击数据是DOS攻击的一种&#xff0c;利用TCP协议缺陷&#xff0c;发送大量的半连接请求&#xff0c;耗费CPU和内存资源&#xff0c;发生在TCP三次握手中。 A向B…

2023年为何最卷的IT行业仍是很多人的首选?

最近这段时间&#xff0c;“IT行业崩盘了”、“前端已死&#xff0c;后端已亡”这些言论在网络中甚嚣尘上&#xff0c;引起了激烈的讨论。 对此&#xff0c;小编只想说&#xff1a;别再看了&#xff01;这不妥妥的传播焦虑吗&#xff1f;他们怎么只告诉你IT行业完了&#xff…

前端预览pdf文件

在前端开发中&#xff0c;很多时候我们需要进行pdf文件的预览操作&#xff0c;下面给出几种常见的预览pdf文件的方法&#xff1a; 一&#xff1a;直接浏览器打开 如果项目对pdf的预览功能要求不高&#xff0c;只是要求能够看的话&#xff0c;可以直接在浏览器上打开pdf文件的…