моя контактная информация
Почтамезофия@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Согласно первоначальному мышлению js, выбор каскадных раскрывающихся списков часто заключается в том, чтобы сначала связать меню раскрывающегося списка первого уровня, затем выполнить onchange под раскрывающимся списком, получить текущую опцию в событии onchange и затем привяжите данные раскрывающегося списка второго уровня и так далее...
Вам следует изменить свое мышление в рамках Vue. Сначала установите данные раскрывающегося списка первого уровня, а затем посмотрите, если он изменится, установите данные раскрывающегося списка второго уровня и так далее. :
- <el-form-item label="省">
- <el-select v-model="where.provinceId" placeholder="请选择省份" clearable >
- <el-option v-for="item in provinces" :key="item.id" :label="item.name" :value="item.id" />
- </el-select>
- </el-form-item>
- <el-form-item label="市">
- <el-select v-model="where.cityId" placeholder="请选择市" clearable>
- <el-option v-for="item in cities" :key="item.id" :label="item.name" :value="item.id" />
- </el-select>
- </el-form-item>
- const provinces = ref([])
- const cities = ref([])
-
- onMounted(()=>{
- // 通过接口获取省份
- provinces.value = [...data]
- })
-
- watch: {
- provinceId: {
- deep: true,
- handler() {
- // 根据接口获取市的数据
- cities.value=[...data]
- // 清空城市的选择
- where.cityId=''
- }
- }
- },