getUser로 사용자 정보를 불러오고, 또 getPosts로 포스트 목록을 조회하도록 구현해줬습니다. 사용자 정보는 FlatListListHeaderComponent를 통해서 보여주도록 했는데, 이렇게 FlatList 내부에 보이도록 한 이유는 사용자 정보를 스크롤 영역에 포함시키기 위함입니다.

    현재 사용자의 프로필 사진을 보여주는 Image 컴포넌트는 PostCardSetupProfile에서 사용한 것과 매우 유사한데요. 이렇게 반복되는 코드를 리팩토링해줍시다. Avatar라는 컴포넌트를 다음과 같이 작성해주세요.

    components/Avatar.js

    import React from 'react';
    import {Image} from 'react-native';
    
    function Avatar({source, size, style}) {
      return (
        <Image
          source={source || require('../assets/user.png')}
          resizeMode="cover"
          style={[
            style,
            {
              width: size,
              height: size,
              borderRadius: size / 2,
            },
          ]}
        />
      );
    }
    Avatar.defaultProps = {
      size: 32,
    };
    
    export default Avatar;
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.