vue mint-ui 기반 도시 선택 3 급 연동 예시

3419 단어 vuemint-ui연동
프로젝트 는 vue 2 기반 모 바 일 엔 드 프로젝트 입 니 다.
1.실제 효과

주소 3 급 연동 mint-ui picker.png
2.우선 중국 성,도시,구,현의 데 이 터 를 다운로드 해 야 합 니 다.
다음 과 같다.
https://github.com/artiely/Administrative-divisions-of-China(2 급 연동 데이터,3 급 연동 데이터,4 급 연동 데이터 등 을 포함 하고 자신 이 필요 로 하 는 것 을 찾 습 니 다)
3.구체 적 인 코드
주로 mint-ui 의 picker 구성 요 소 를 사 용 했 습 니 다.mint-ui 의 사용 에 대해 서 는 홈 페이지 를 직접 보 세 요.
I、html 구성 요소

<div>
  <mt-picker :slots="myAddressSlots" @change="onMyAddressChange"></mt-picker>
  <p>  3   :{{myAddressProvince}} {{myAddressCity}} {{myAddresscounty}}</p>
</div>
II,구성 요소 방법

<script>
  import { Picker } from 'mint-ui';
  import myaddress from '../../../static/address3.json'     //       
  export default {
    name: '',
    components: {
      'mt-picker': Picker
    },
    props: {},
    data () {
      return {
       myAddressSlots: [
          {
            flex: 1,
            defaultIndex: 1,    
            values: Object.keys(myaddress),  //    
            className: 'slot1',
            textAlign: 'center'
          }, {
            divider: true,
            content: '-',
            className: 'slot2'
          }, {
            flex: 1,
            values: [],
            className: 'slot3',
            textAlign: 'center'
          },
          {
            divider: true,
            content: '-',
            className: 'slot4'
          },
          {
            flex: 1,
            values: [],
            className: 'slot5',
            textAlign: 'center'
          }
        ],
        myAddressProvince:' ',
        myAddressCity:' ',
        myAddresscounty:' / ',
      }
    },
    created() {


    },
    methods: {
     onMyAddressChange(picker, values) {
       if(myaddress[values[0]]){  //       v-if   (    ,  vue   ,   )
          picker.setSlotValues(1,Object.keys(myaddress[values[0]])); // Object.keys()       ,      
          picker.setSlotValues(2,myaddress[values[0]][values[1]]); //  /         
          this.myAddressProvince = values[0];
          this.myAddressCity = values[1];
          this.myAddresscounty = values[2];
        }
      },
    },
    mounted(){
      this.$nextTick(() => { //vue                (   setTimeout)
        this.myAddressSlots[0].defaultIndex = 0    
        //         data   defaultIndex            
        //         (            ,      )
      });
    }
  }
</script>
참고 글https://www.jb51.net/article/125935.htm(mint-ui picker 의 4 급 연동)
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기