Pembangunan komponen Vue: Kaedah pelaksanaan komponen pemilih bandar
Dalam pembangunan Vue, komponen pemilih bandar adalah komponen yang sangat biasa dan praktikal. Ia biasanya digunakan untuk operasi interaktif apabila pengguna memilih bandar atau wilayah. Artikel ini akan memperkenalkan kaedah pelaksanaan komponen pemilih bandar berasaskan Vue dan memberikan contoh kod khusus.
<template> <div class="city-selector"> <ProvinceSelector @provinceChange="handleProvinceChange" /> <CitySelector :province="selectedProvince" @cityChange="handleCityChange" /> <AreaSelector :city="selectedCity" @areaChange="handleAreaChange" /> <div class="selected-result"> <p>已选城市:{{ selectedCity }}</p> <p>已选区域:{{ selectedArea }}</p> </div> </div> </template> <script> import ProvinceSelector from './ProvinceSelector.vue' import CitySelector from './CitySelector.vue' import AreaSelector from './AreaSelector.vue' export default { components: { ProvinceSelector, CitySelector, AreaSelector }, data() { return { selectedProvince: '', selectedCity: '', selectedArea: '' } }, methods: { handleProvinceChange(province) { this.selectedProvince = province this.selectedCity = '' this.selectedArea = '' }, handleCityChange(city) { this.selectedCity = city this.selectedArea = '' }, handleAreaChange(area) { this.selectedArea = area } } } </script>
<template> <div class="province-selector"> <select v-model="selectedProvince" @change="handleChange"> <option v-for="province in provinces" :key="province" :value="province">{{ province }}</option> </select> </div> </template> <script> export default { data() { return { selectedProvince: '' } }, computed: { provinces() { // 从后台或静态数据获取省份列表 return ['北京', '上海', '广东', '江苏'] } }, methods: { handleChange() { this.$emit('provinceChange', this.selectedProvince) } } } </script>
rreee#🎜🎜.#Area🎜🎜.#Area🎜🎜 🎜 #
Gunakan komponenSelepas melengkapkan penulisan komponen, cuma perkenalkan di mana anda perlu menggunakan pemilih bandar:
<template> <div class="city-selector"> <select v-model="selectedCity" @change="handleChange"> <option v-for="city in cities" :key="city" :value="city">{{ city }}</option> </select> </div> </template> <script> export default { props: { province: { type: String, default: '' } }, data() { return { selectedCity: '' } }, computed: { cities() { // 根据选择的省份从后台或静态数据获取城市列表 if (this.province === '北京') { return ['北京市', '朝阳区', '海淀区'] } else if (this.province === '上海') { return ['上海市', '黄浦区', '徐汇区'] } else if (this.province === '广东') { return ['广州市', '深圳市', '珠海市'] } else if (this.province === '江苏') { return ['南京市', '苏州市', '无锡市'] } else { return [] } } }, watch: { province(newValue) { this.selectedCity = '' } }, methods: { handleChange() { this.$emit('cityChange', this.selectedCity) } } } </script>
Atas ialah kandungan terperinci Pembangunan komponen Vue: kaedah pelaksanaan komponen pemilih bandar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!