FlatList를 사용하다보면 가끔 저런 경고문이 뜨는 것을 볼 수 있다.
해석해보면... 리액트처럼 가상돔 형태로 렌더되는 경우 리스트 컴포넌트들은 중첩이 되어서는 안된다는 것인데... 왜 중첩이 된걸까??
: 모른다면 이런 경고문을 마주하게 될 것이다.
: 빨간글보단 낫지만 노란글도 거슬린다. 없애야한다.
중첩... 중첩... 스크롤뷰 중첩이라...
return (
<View>
<ScrollView
showsVerticalScrollIndicator={false}
showsHorizontalScrollIndicator={false}>
<Swiper data={slideData} />
<FlatList />
</ScrollView>
</View>
);
};
horizontal={true}
horizontal={false}
showsVerticalScrollIndicator={false}
showsHorizontalScrollIndicator={false}>
const Container = styled(View)`
${Mixin.flexSet('center', 'center', 'column')};
width: 390px;
height: 2000px;
`;
무조건
생긴다는 의미이다.: 이것은 구글링을 통해 한가지 좋은 방법을 찾을 수 있었다.
return (
<FlatList
ListHeaderComponent={
<>
<CoverPhoto src={images[0]} />
<Title>Welcome</Title>
<Text>Take a look at the list of recipes below:</Text>
</>}
data={recipes}
renderItem={renderItem}
ListFooterComponent={
<Footer/>
}/>
)
: 그리고 경고문도 안보고 싶다!!!
FlatList에 스크롤이 필요없다면 FlatList에 scrollEnable=false 설정으로도 해결됩니다!!