为了账号安全,请及时绑定邮箱和手机立即绑定

vue + vux 使用Picker 组件的时候 使用onchange事件 的问题 求帮忙

vue + vux 使用Picker 组件的时候 使用onchange事件 的问题 求帮忙

慕容3067478 2019-03-21 17:15:02
vue + vux 使用Picker 组件的时候 使用onchange事件 的问题这是一个城市联动的例子 因为要先获取省 再获取市 而不是一次性拉取数据 所以我在picker的change事件中 进行获取数据 但是这样又会导致 每次动态获取数据后赋值 也会触发onchange 事件 这样会变成一个循环 不停的请求 更新视图 正常应该怎样去做呢 求帮忙啊 各位大神<template>    <div>         <group>             <picker :data='citySelect' v-model='city' @on-change='change'></picker>         </group>             </div></template><script>import {Picker,Group} from 'vux'   export default{       data(){        return {        citySelect: [            [{                name:"北京",                value:1            }],            [{                name:"北京",                value:1            }]        ],         city: ['',],         }       },       methods : {        change(value){                          let url = 'api/mortgage/'+value[0]+'/cityList'                  console.log(url)                  this.$axios(url,'get').then(res=>{                  let data =res.data.data                  let arr =[]                  for (let i in res.data.data){                         let data = {}                         data.value = res.data.data[i].city_id                         data.name= res.data.data[i].city_name                         arr.push(data)                     }                          this.citySelect[1] = arr                     this.$set(this.citySelect,1,arr)                     console.log(this.citySelect)                  })              }       },       mounted(){        //    数据初始化        let url ='api/mortgage/provList'           this.$axios(url,'get').then(res=>{            //    console.log(res.data.data)                        //     console.log(this.citySelect)            let arr =[]            for (let i in res.data.data){                let data = {                    value:'',                    name:""                }                data.value = i                data.name= res.data.data[i]                arr.push(data)            }               this.$set(this.citySelect,0,arr)             
查看完整描述

2 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

如果发现了该节点的子节点已经存在了,就不去请求。只有在子节点为空的时候去请求呢。


查看完整回答
反对 回复 2019-04-10
  • 2 回答
  • 0 关注
  • 1687 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信