| | |
| | | <template> |
| | | <el-row> |
| | | <el-col :span="20"> |
| | | <el-form label-position="right" label-width="60px" :inline="false"> |
| | | <el-form-item label="区域"> |
| | | <OptionLocation2 |
| | | :level="3" |
| | | :initValue="true" |
| | | :checkStrictly="false" |
| | | :allOption="true" |
| | | v-model="location" |
| | | ></OptionLocation2> |
| | | </el-form-item> |
| | | <OptionGridGroup |
| | | ref="gridGroupRef" |
| | | v-model="gridGroup" |
| | | ></OptionGridGroup> |
| | | </el-form> |
| | | </el-col> |
| | | <el-col :span="4"> |
| | | <el-form-item> |
| | | <!-- <el-row> --> |
| | | <!-- <el-col :span="20"> --> |
| | | <el-form label-position="right" label-width="60px" :inline="false"> |
| | | <el-form-item label="区域"> |
| | | <OptionLocation2 |
| | | :level="3" |
| | | :initValue="true" |
| | | :checkStrictly="false" |
| | | :allOption="true" |
| | | v-model="location" |
| | | ></OptionLocation2> |
| | | </el-form-item> |
| | | <OptionGridGroup ref="gridGroupRef" v-model="gridGroup"></OptionGridGroup> |
| | | </el-form> |
| | | <!-- </el-col> --> |
| | | <!-- <el-col :span="4"> --> |
| | | <!-- <el-form-item> |
| | | <el-button |
| | | :loading="loading" |
| | | :disabled="!gridGroup" |
| | |
| | | > |
| | | 查询 |
| | | </el-button> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form-item> --> |
| | | <!-- </el-col> --> |
| | | <!-- </el-row> --> |
| | | </template> |
| | | <script setup> |
| | | import { ref, watch } from 'vue'; |
| | |
| | | const location = ref(undefined); |
| | | const gridGroup = ref(undefined); |
| | | const gridGroupRef = ref(null); |
| | | const area = ref({}); |
| | | |
| | | const emits = defineEmits(['search']); |
| | | |
| | | watch(location, (nv, ov) => { |
| | | if (nv != ov) { |
| | | const area = { |
| | | area.value = { |
| | | provinceCode: nv.pCode, |
| | | provinceName: nv.pName, |
| | | cityCode: nv.cCode, |
| | |
| | | townCode: nv.tCode, |
| | | townName: nv.tName |
| | | }; |
| | | gridGroupRef.value.fetchGridGroup(area); |
| | | gridGroupRef.value.fetchGridGroup(area.value, 'origin'); |
| | | } |
| | | }); |
| | | |
| | | watch(gridGroup, (nv, ov) => { |
| | | // 首次进入自动触发一次查询事件 |
| | | if (ov == undefined && nv != ov) { |
| | | // 自动触发一次查询事件 |
| | | // if (ov == undefined && nv != ov) { |
| | | if (nv != ov) { |
| | | handleClick(); |
| | | } |
| | | }); |
| | |
| | | function handleClick() { |
| | | emits('search', gridGroup.value); |
| | | } |
| | | |
| | | defineExpose({ area }); |
| | | </script> |