zoukankan      html  css  js  c++  java
  • [React Native] Reusable components with required propType

    In this React Native lesson, we will be creating a reusable Badge component. The component will also make use of propTypes to validate that its required data is being passed in when it is used.

    We are going to build Badge component which will just show the user image. This componet will be reused into Profile, Bio and Note component as well.

    import React, {Component} from 'react';
    import {Text, View, StyleSheet, Image} from 'react-native';
    
    var styles = StyleSheet.create({
        container: {
            backgroundColor: '#48BBEC',
            paddingBottom: 10
        },
        name: {
            alignSelf: 'center',
            fontSize: 21,
            marginTop: 10,
            marginBottom: 5,
            color: 'white'
        },
        handle: {
            alignSelf: 'center',
            fontSize: 16,
            color: 'white'
        },
        image: {
            height: 125,
             125,
            borderRadius: 65,
            marginTop: 10,
            alignSelf: 'center'
        }
    });
    
    class Badge extends React.Component {
        render(){
            return (
                <View>
                    <Image style={styles.image} source={{uri: this.props.userInfo.avatar_url}}></Image>
                    <Text style={styles.name}> {this.props.userInfo.name} </Text>
                    <Text style={styles.handle}> {this.props.userInfo.login} </Text>
                </View>
            )
        }
    }
    
    /**
     * Make sure when when user the Badge component, the userInfo object is there
     * @type {{userInfo: *}}
     */
    Badge.propTypes = {
        userInfo: React.PropTypes.object.isRequired
    };
    
    module.exports=Badge;
  • 相关阅读:
    高效、稳定开发功能的一些心得
    记录一些遗忘的程序基础知识
    Linux NFS
    Nginx Upstream模块
    Redis命令总结
    手动搭建redis集群(3台)
    laravel使用总结(二)
    InnoDB体系架构总结(二)
    laravel 设计思想简单了解
    Redis原理及集群相关知识
  • 原文地址:https://www.cnblogs.com/Answer1215/p/5713281.html
Copyright © 2011-2022 走看看