Skip to content

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