<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="app">
<select name="" id="" v-model="selA" @change="changeA">
<option v-for="item in list" :value="item">{{item.name}}</option>
</select>
<select name="" id="" v-model="selB" @change="changeB">
<option v-for="item in selA.city" :value="item">{{item.name}}</option>
</select>
<select name="" id="" v-model="selC" v-if="selC">
<option v-for="item in selB.area" :value="item">{{item.name}}</option>
</select>
</div>
</body>
<script src="./js/city.js"></script>
<script src="./js/vue.js"></script>
<script>
new Vue({
el: "#app",
methods: {
changeA() {
//A发生变化时,修改B的值
this.selB = this.selA.city[0];
if (this.selB.area) {
//如果B有sub 修改C的值
this.selC = this.selB.area[0];
}
},
changeB() {
if (this.selB.area) {
this.selC = this.selB.area[0];
}
}
},
data() {
return {
list: arrAll,//所有的数据
selA: arrAll[0],//第一级
selB: arrAll[0].city[0],//第二级
selC: arrAll[0].city[0].area[0]//三级
}
}
})
</script>
</html>