Documentation / @finchart/react / SeriesCollector
Interface: SeriesCollector<T>
Defined in: components/series-collector.ts:17
한 pane이 그릴 시리즈 목록을 JSX 순서대로 모은다. pane 하나에 하나다.
syncSeries는 배열 순서를 그리는 순서로 삼는데, effect는 마운트 순서로 돌아 조건부로 늦게 켠 시리즈가 늘 맨 뒤에 붙는다. JSX 순서를 아는 곳은 렌더 단계뿐이라, 자리는 렌더에서 정하고(place) 무대 반영은 commit 뒤로 미룬다(flush).
자리를 순번으로 들고 있는 게 핵심이다 — 배열 위치로 들면 렌더 없이 붙었다 떨어지는 경우(StrictMode·Activity)에 되돌아올 자리를 잃는다.
id는 <ChartSeries>가 인스턴스마다 만들어 온다(useId) — 신원 판정은 React의 재조정이지 이 수집기가 아니다.
Type Parameters
T
T extends BaseDataPoint
Methods
begin()
begin():
void
Defined in: components/series-collector.ts:19
렌더 단계. pane이 자기 자식들을 다시 세우기 시작한다고 알린다.
Returns
void
flush()
flush():
void
Defined in: components/series-collector.ts:42
commit 뒤. 지금 목록을 pane에 넘긴다. 여러 번 불러도 안전하다.
Returns
void
keep()
keep(
spec):void
Defined in: components/series-collector.ts:36
commit 단계. 목록에 있는지만 확인한다. 순번은 렌더가 준 것을 그대로 쓰므로 제자리로 돌아온다.
StrictMode는 effect를 붙였다 떼고 다시 붙이므로, cleanup으로 빠진 것이 렌더 없이 되돌아와야 한다.
Parameters
spec
SeriesSpec<T>
Returns
void
place()
place(
spec):void
Defined in: components/series-collector.ts:27
렌더 단계. 이번 차례의 순번을 받는다.
pane이 렌더하지 않았으면(자기 혼자 다시 렌더한 시리즈) 순번은 그대로 두고 내용만 갈아 끼운다 — 아니면 혼자 맨 앞으로 튄다.
Parameters
spec
SeriesSpec<T>
Returns
void
remove()
remove(
id):void
Defined in: components/series-collector.ts:39
언마운트. 순번은 바로 안 지운다 — 렌더 없이 되돌아올 수 있다. 끝까지 안 돌아오면 다음 begin()이 치운다.
Parameters
id
string
Returns
void