← 질문 목록
#109깊이 0
목록 항목의 정체성을 어떻게 보존하는가?
렌더 사이에 같은 항목을 가리키는 안정적이고 고유한 키를 준다. 프레임워크는 키로 기존 인스턴스와 상태를 새 항목에 대응시킨다.
| 기준 | 안정적 ID | 배열 인덱스 |
|---|---|---|
| 재정렬 | 상태를 항목에 유지 | 상태가 위치에 붙을 수 있음 |
같은 부모 아래에서 키와 타입이 같으면 기존 컴포넌트와 DOM을 재사용한다. 키가 바뀌면 새로 마운트해 내부 상태도 초기화한다.
인덱스 키는 이미 있는 항목의 자리가 안 바뀔 때만 안전하다. 끝에만 붙이는 목록이면 괜찮고, 중간에 끼우거나 지우거나 정렬하면 어긋난다. 매번 생성한 난수 키는 전부 다시 마운트해 성능과 입력 상태를 해친다.