d2-crud icon indicating copy to clipboard operation
d2-crud copied to clipboard

form-data-change获取el-select变更事件的时候,获取到的value是修改之前的value

Open L3T opened this issue 6 years ago • 5 comments

L3T avatar Feb 20 '19 08:02 L3T

贴一下你的代码片段吧

sunhaoxiang avatar Feb 20 '19 08:02 sunhaoxiang

我也遇到同样的问题,addTemplate和editTemplate使用el-select时,切换选项,form-data-change=‘handleFormDataChange’捕捉到事件,拿到key和value,其中value是修改之前的值。

bantao avatar Apr 07 '19 10:04 bantao

用el-switch插件也有同样问题,数据得到是反的

qiqilie avatar Aug 16 '19 01:08 qiqilie

希望可以处理一下,我也遇到这个问题

melunar avatar Apr 29 '20 03:04 melunar

                <el-select
                  v-else-if="handleFormTemplateMode(key).component.name === 'el-select'"
                  v-model="formData[key]"
                  v-bind="$d2CrudSize ? Object.assign({ size: $d2CrudSize}, handleFormTemplateMode(key).component) : handleFormTemplateMode(key).component"
                  @change="$emit('form-data-change', {key: key, value: value})"
                >

去看了下源码,这里确实有问题,$emit('form-data-change', {key: key, value: value}) 这里的value 取得是绑定在组件上的model,还没有更新,更新的value在 change事件回调里面带了选中的值,应该是@change="(data => $emit('form-data-change', {key: key, value: data.value}))()"

melunar avatar Apr 29 '20 04:04 melunar