vue+elementui el

您所在的位置:网站首页 element下拉菜单获取数据报错 vue+elementui el

vue+elementui el

2024-07-10 01:52| 来源: 网络整理| 查看: 265

场景

两个el-select 联动的选择框,选完第一个框异步加载第二个框的选项列表并给第二个选项赋值为选项的第一个值

export default { data() { return { formData: {}, option1 = [] : [], option2: [], } }, method: { onChange() { this.$set(this.formData, 'data2', undefined) this.option2 = [] Request('post', 'xxxxx').then(res => { this.option2 = res.data this.$set(this.formData, 'data2', this.option2[0].id) }) } } }

示例 在这里插入图片描述 在这里插入图片描述 切换第一个选项之后如果在很短的时间内去点击第二个选项框, 第二个选项的值为空但是选项中已选中,或者会出现直接渲染出value值的情况。

解决方案

网上看了很多方法,使用this.$set value值和选项中的value数据类型不同等等 最后的解决方案是:

onChange() { this.$set(this.formData, 'data2', undefined) this.option2 = [] Request('post', 'xxxxx').then(res => { this.option2 = res.data setTimeout(() => { this.$set(this.formData, 'data2', this.option2[0].id) }, 0) }) } 在setTimeout中对formData进行赋值


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3