[React Native] Build a Github Repositories component

來源:互聯網
上載者:User

標籤:

Nav to Repos component from Dashboard.js:

    goToRepos(){        api.getRepos(this.props.userInfo.login)            .then((res)=>{                this.props.navigator.push({                    title: ‘Repos‘,                    component: Repos,                    passProps: {                        userInfo: this.props.userInfo,                        repos: res                    }                });            })    }

 

Repos:

import React, {Component} from ‘react‘;import {View, StyleSheet, Text, ScrollView, TouchableHighlight} from ‘react-native‘;import Badge from ‘./Badge‘;import Divdir from ‘./Helpers/divdir‘;var styles = StyleSheet.create({    container: {        flex: 1,    },    rowContainer: {        flexDirection: ‘column‘,        flex: 1,        padding: 10    },    name: {        color: ‘#48BBEC‘,        fontSize: 18,        paddingBottom: 5    },    stars: {        color: ‘#48BBEC‘,        fontSize: 14,        paddingBottom: 5    },    description: {        fontSize: 14,        paddingBottom: 5    }});class Repos extends React.Component{    openPage(url){        console.log(‘the url is‘, url);    }    render(){        var list = this.props.repos.map((repo, index) => {            const desc = repo.description ? <Text style={styles.description}> {repo.description} </Text> : <View />;            return (                <View key={index}>                    <View style={styles.rowContainer}>                        <TouchableHighlight                            onPress={this.openPage.bind(this, repo.html_url)}                            underlayColor=‘transparent‘>                            <Text style={styles.name}>{repo.name}</Text>                        </TouchableHighlight>                        <Text style={styles.stars}> Stars: {repo.stargazers_count} </Text>                e        {desc}                        <Divdir></Divdir>                    </View>                </View>            )        });        return (            <ScrollView style={styles.container}>                <Badge userInfo={this.props.userInfo} />                {list}            </ScrollView>        )    }};Repos.propTypes = {    userInfo: React.PropTypes.object.isRequired,    repos: React.PropTypes.object.isRequired};module.exports = Repos;

 

[React Native] Build a Github Repositories component

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.