2017-03-03 6 views

답변

5

, 당신은 특히주의해야 ListView를하고있는 ScrollView 사이의 주요 차이점은 구성 요소가 자식 요소를 렌더링하는 방법입니다. ScrollView은 하위 요소를 한 번에 렌더링합니다. ListView에는 잠재적으로 무한한 수의 요소 목록을 부드럽게 스크롤 할 수있는 몇 가지 추가 기능이 있습니다. documentation 인용, 여기의 ListView의 기능을 향상 성능은 다음과 같습니다

  1. 만 다시 렌더링 변경된 행 -이 때문에 행을 다시 렌더링 할 필요가있는 경우 데이터 소스에 제공되는 rowHasChanged 기능리스트 뷰를 알려줍니다 소스 데이터가 변경되었습니다. 자세한 내용은 ListViewDataSource를 참조하십시오.

  2. 기본적으로 속도 루프 당 하나의 행만 렌더링됩니다 (pageSize 소품으로 사용자 정의 가능). 이렇게하면 작업을 작은 청크로 분할하여 행을 렌더링하는 동안 프레임을 삭제할 가능성을 줄일 수 있습니다. 그것은 한 번에 모든 하위 구성 요소를 렌더링하고 데이터가 변경되지 않은 경우에도 구성 요소를 다시 렌더링하기 때문에, 확실히 메모리 사용 및 성능에 영향을 미칠 것입니다있는 ScrollView를 사용하여 많은 동적 데이터를 렌더링

. 따라서이 경우 두 가지 중 하나만 사용할 수 있다면 ListView 구성 요소를 사용하십시오.

RN v> = 0.43을 사용하는 경우 가장 좋은 방법은 FlatList 구성 요소를 사용하는 것입니다. 이것을 사용하는 주된 이점은 필요한 경우에만 (지연로드) 구성 요소를 렌더링한다는 것입니다.

자세한 설명을 위해 official RN documentation을 적극 권장합니다.

관련 문제