2016-06-28 3 views
0

테이블이있는 클래스가 있습니다. 문제는 열의 양이 다를 수 있습니다. 테이블에 데이터가로드되지 않으면 "데이터 없음"과 같은 메시지를 여기에 표시해야합니다 (<td colSpan="#"></td> 사용). colSpan에 대한 표의 열 수를 결정해야합니다. 즉, 표의 머리글에있는 th 개의 요소 수를 계산하고 싶습니다. render 방법이 가능합니까 아니면 더 좋은 방법이 있을까요?렌더링 전에 JSX의 요소를 계산할 수 있습니까?

답변

3

당신은에 React Children 유틸리티를 사용할 수 있습니다 ...

나는 나는 그것이 componentDidUpdate에 jQuery를 사용하여 삽입 한 다음 해당 "데이터 없음"메시지없이 테이블을 렌더링하고 있다고 생각하지만, 뭔가는 나쁜 생각 하더군요 내부에 요소가 있는지 확인하십시오 (또는 TableHeader 요소를 감싸는 부모 Table 요소가있는 경우). 나는 그것이 이것이 가장 적절한 접근 방법 일 것이라고 생각한다.

그런 식으로 내용을 동적으로 렌더링 할 수 있고 렌더링해야하는 요소의 수를 알 수 있습니다.

더 정확하게 찾고 싶은 것은 React.Children.count입니다.

관련 문제