vue-选择省份城市

1.使用select

2.通过watch动态的监听刷新数据

布局

 <select v-model="Province">
        <option v-for="option in arr" :value="option.name">
          {{ option.name }}
        </option>
      </select>
      <select v-model="city">
        <option v-for="option in cityArr" :value="option.name">
          {{ option.name }}
        </option>
      </select>

数据

data() {
      return {
   
        arr: [
          {name: "湖南省", sub: [{name: "长沙市"}, {name: "娄底市"},]},
          {name: "江西省", sub: [{name: "南昌市"}, {name: "九江市"},]},
        ],
        Province: '湖南省',
        city: '长沙市',
        cityArr: [],
        }
      },

 beforeMount: function () {
      this.updateCity();
    },
    methods: {
      updateCity() {
        for (let i in this.arr) {
          let obj = this.arr[i].name;
          if (obj == this.Province) {
            this.cityArr = this.arr[i].sub;
          } else {
            this.cityArr = this.arr[0].sub;
          }
        }
      },
    },
watch:{
      Province:function () {
        this.updateCity();
        console.info('Province='+this.Province)
      },
      city:function () {
        console.info('city='+this.city)
      },
    },

参考:https://www.cnblogs.com/zhishaofei/p/6964673.html

。。。

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值