diff --git a/pages/form-input/components/form-input/address.vue b/pages/form-input/components/form-input/address.vue index 86b50821..072ad1f6 100644 --- a/pages/form-input/components/form-input/address.vue +++ b/pages/form-input/components/form-input/address.vue @@ -145,9 +145,9 @@ }); // 地址信息校验 const { is_error = '0', error_text = '' } = get_format_checks(this.com_data, data.province.id, false, 'address'); - this.$emit('dataCheck', { is_error, error_text, value: [ data.province.id, data.city.id, data.areal.id ], id: this.propDataId }); + this.$emit('dataCheck', { is_error, error_text, value: [ data.province.id, data.city.id, data.areal.id ], id: this.propDataId, province_name: data.province.name, city_name: data.city.name, county_name: data.areal.name }); // 改变对应id的数据 - this.$emit('regionEvent', { value: [ data.province.id, data.city.id, data.areal.id ], province_name: data.province.name, city_name: data.city.name, county_name: data.areal.name, id: this.propDataId }); + // this.$emit('regionEvent', { value: [ data.province.id, data.city.id, data.areal.id ], province_name: data.province.name, city_name: data.city.name, county_name: data.areal.name, id: this.propDataId }); }, input_value_event(e) { // 重新编辑一下历史数据 diff --git a/pages/form-input/components/form-input/form-input-base.vue b/pages/form-input/components/form-input/form-input-base.vue index e62c7053..3ddc8aee 100644 --- a/pages/form-input/components/form-input/form-input-base.vue +++ b/pages/form-input/components/form-input/form-input-base.vue @@ -47,7 +47,7 @@ - + @@ -109,6 +109,7 @@ :propFormInputId="propFormInputId" @helpIconEvent="subform_help_icon_event" @subformDataChange="subform_data_change" + @subformDataCheck="subform_data_check" @zIndexChange="z_index_change" /> @@ -533,7 +534,7 @@ export default { * 手机号验证码的校验 */ data_code_check(e) { - const { is_error, error_text, value, id } = e; + const { is_error, error_text, value, id, province_name = '', city_name = '', county_name = '' } = e; // 改变对应id的数据 const data = [...this.data_list]; data.forEach(item => { @@ -541,6 +542,11 @@ export default { item.com_data.form_value_code = value; item.com_data.common_config.is_error = is_error; item.com_data.common_config.error_text = error_text; + if (item.key == 'address') { + item.com_data.province_name = province_name; + item.com_data.city_name = city_name; + item.com_data.county_name = county_name; + } } }); this.setData({ data_list: data }); @@ -559,6 +565,16 @@ export default { } }); this.setData({ data_list: data }); + }, + subform_data_check(e, id) { + // 改变对应id的数据 + const data = [...this.data_list]; + data.forEach(item => { + if (item.id == id && item.com_data) { + item.com_data.data_list = e + } + }); + this.setData({ data_list: data }); // 触发数据修改的事件 this.verify_when_data_changes(id); }, diff --git a/pages/form-input/components/form-input/subform.vue b/pages/form-input/components/form-input/subform.vue index 626256cd..bca36c66 100644 --- a/pages/form-input/components/form-input/subform.vue +++ b/pages/form-input/components/form-input/subform.vue @@ -58,7 +58,6 @@ @dataOptionChange="data_option_change" @openRegion="open_region" @helpIconEvent="subform_help_icon_event" - @regionEvent="region_event" @zIndexChange="z_index_change" /> @@ -112,7 +111,6 @@ @dataCheck="data_check" @dataOptionChange="data_option_change" @openRegion="open_region" - @regionEvent="region_event" @zIndexChange="table_z_index_change" /> @@ -160,7 +158,6 @@ @dataOptionChange="data_option_change" @openRegion="open_region" @helpIconEvent="subform_help_icon_event" - @regionEvent="region_event" @zIndexChange="z_index_change" /> @@ -498,7 +495,7 @@ }, // 子表单校验逻辑 data_check(e, index) { - const { is_error, error_text, value, id } = e; + const { is_error, error_text, value, id, province_name = '', city_name = '', county_name = '' } = e; // 改变对应id的数据 const data = [...this.data_list]; data.forEach((item, index1) => { @@ -508,6 +505,11 @@ item1.com_data.form_value = value; item1.com_data.common_config.is_error = is_error; item1.com_data.common_config.error_text = error_text; + if (item1.key == 'address') { + item1.com_data.province_name = province_name; + item1.com_data.city_name = city_name; + item1.com_data.county_name = county_name; + } } }); } @@ -515,7 +517,7 @@ this.setData({ data_list: data }) - this.$emit('subformDataChange', data, this.propDataId); + this.$emit('subformDataCheck', data, this.propDataId); }, // 子表单内容参数修改 data_change(e, index) {