zoukankan      html  css  js  c++  java
  • React 结合ant-mobile 省市区级联

    import {Picker} from 'antd-mobile'
    import React from 'react'
     
    const CustomChildren = props => (
        <div
            onClick={props.onClick}
            style={{ backgroundColor: '#fff', paddingLeft: 15 }}
        >
            <div className="test" style={{ display: 'flex', height: '45px', lineHeight: '45px',position:'relative',borderBottom:0 }}>
                <div style={{ flex: 1, overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }}>{props.children}</div>
                <div style={{ textAlign: 'right', color: '#888', marginRight: 15 }}>{props.extra}</div>
            </div>
        </div>
    );
     
    export default class extends React.Component {
        constructor(props){
            super(props);
            this.state={
                pickerValue: [],
            };
        }
     
        render(){
            let antdDistrict =[];
            let districtData = require('./location');
            Object.keys(districtData).forEach((index)=>{
                let itemLevel1 ={};
                let itemLevel2 ={};
                itemLevel1.value = districtData[index].code;
                itemLevel1.label = districtData[index].name;
                itemLevel1.children = [];
                let data = districtData[index].cities;
                Object.keys(data).forEach((index)=>{
                    itemLevel2.value = data[index].code;
                    itemLevel2.label = data[index].name;
                    itemLevel2.children = [];
                    let data2 = data[index].districts;
                    let itemLevel3 ={};
                    itemLevel3.children = [];
                    Object.keys(data2).forEach((index)=>{
                        itemLevel3.value = index;
                        itemLevel3.label = data2[index];
                        itemLevel2.children.push(itemLevel3);
                        itemLevel3 ={};
                    });
                    itemLevel1.children.push(itemLevel2);
                    itemLevel2 ={};
                });
                antdDistrict.push(itemLevel1)
            });
            console.log(antdDistrict);
            return (
                <div>
                    <Picker
                        title="选择地区"
                        extra="请选择(可选)"
                        data={antdDistrict}
                        value={this.state.pickerValue}
                        onChange={v => this.setState({ pickerValue: v })}
                        onOk={v => this.setState({ pickerValue: v })}
                        onClick={()=>{console.log('xx')}}
                    >
                        <CustomChildren>Customized children</CustomChildren>
                    </Picker>
                </div>
            )
        }
    }
  • 相关阅读:
    空气墙的制作,标签的添加
    子弹朝向问题的解决,移动方法的编写
    子弹的朝向问题
    坦克的攻击方法
    移动优先级的添加,2D渲染层级问题
    碰撞器的添加,解决抖动问题
    控制图片的移动切换
    控制玩家的移动
    游戏中预制体的制作,2D动画的制作
    场景搭建,素材的处理
  • 原文地址:https://www.cnblogs.com/it-Ren/p/13360867.html
Copyright © 2011-2022 走看看