首页 > 其他 > 详细

简单的Checkd加载

时间:2019-08-08 11:09:20      阅读:80      评论:0      收藏:0      [点我收藏+]
class QuestionCheck extends Component {
  constructor(props) {
    super(props);
    this.state = {
      checked: props.checked
    };
    
  }
  changeSel = () => {
    this.props.setCheckd(this.props, !this.state.checked);
    this.setState({
      checked: !this.state.checked,
    });
  };

  componentWillReceiveProps(nextProps){
    if(this.props.checked !== nextProps.checked){
      this.setState({
        checked:nextProps.checked
      })
    }
  }

  render() {
    return (
      <View style={{ flexDirection: row, marginBottom: 10 }} >
        <CheckBox
          onPress={() => {
            this.changeSel();
          }}
          checked={this.state.checked}
          square={true}
          color="#DFDFDF"
        />
        <Text style={{ marginLeft: 20 }}>{this.props.name}</Text>
      </View>
    );
  }
}
  render() {
    const baseQuestion1Des = [
      { id: 1, name: aaa, checked: false },
      { id: 2, name: bbb, checked: false },
      { id: 3, name: ccc, checked: false }
    ];
<Item underline>
              <Text style={styles.textSize}>类型:</Text>
              <View style={{ padding: 10,  marginTop: 10 }}>
              <List
                dataArray={baseQuestion1Des}
                rowHasChanged={(r1, r2) => {
                  return r1.checked !== r2.checked;
                }}
                renderRow={data => {
                  return (
                    <QuestionCheck setCheckd={this.setCheckd} {...data} />
                  );
                }}
              />
            </View>
            </Item>
}

 

简单的Checkd加载

原文:https://www.cnblogs.com/kkvt/p/11319421.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!