2012-04-03 1 views
0

나는 YUI3 3.5pre5 DataTables으로 놀았으며 (YUI2의) 구현에 큰 차이가 있음을 깨달았습니다.데이터 업데이트/변경 시마다 YUI3의 DataTables를 새로 고침

addRow(), modifyRow() and set()을 사용하면 영향을받는 요소 만이 아니라 모든 테이블이 다시로드/새로 고침/새로 고침됩니다.

예를 들어 행을 추가하면 모든 행이 YUI2와 같은 새 행 대신에 다시 그려집니다.

데이터가 많고 일부 셀이 업데이트되어 모든 것이 다시 그려지는 것이 실제 문제입니다. 또는 x 초마다 데이터를 업데이트해야하는 경우 테이블이 항상 새로 고쳐져 작업하기가 더 어려워집니다.

내가 잘못하고 있기를 바랄 수도 있고 해결 방법이 있습니다.

새 DataTable을 올바르게 작동시키는 방법이 있는지 알려주십시오.

감사합니다.

답변

0

잘못하지 않았습니다. 이것이 바로 코드의 현재 상태입니다. 3.6.0에서 데이터 변이 -> UI를 최적화 할 것이며 3.5.0에서했던 것처럼 최근 업데이트 및 기능을 갖춘 미리보기 모듈을 갤러리에서 유지 관리 할 것입니다.

3.4.1에서 나온 아키텍처 및 기능 마이그레이션으로 인해 3.5.0으로 업그레이드하고 싶었던 성능 개선 사항이 많이있었습니다. 그 동안

가 여기에 도움이 패치입니다 : https://gist.github.com/2295032

주, 그것은 nodeFormatters와 호환되지 않습니다, 그리고 다른 가장자리 경우가있을 수 있습니다.

+0

빠른 답변 주셔서 감사합니다. 이 패치는 행을 추가 할 때 특별히 도움이됩니다. 여전히 단일 셀을 업데이트 할 때 모든 행이 새로 고쳐집니다. 3.6.0에 대한 구현과 같이 전체 YUI2가있을 것이라고 생각하십니까 ?? – Jonathan

+0

셀을 격리하면 포맷터의 값을 참조하는 열의 변경 사항을 캡처하지 않습니다. 셀에 대한 업데이트를 제한하는 것이 왜 중요합니까? – Luke

+0

우리는 값이 1 초마다 업데이트되는 주식 금융 애플리케이션을 개발 중입니다. 표 내부에는 각 행에 버튼, 선택 상자, 체크 박스 및 입력이 있으며 여기서 사용자는 값을 변경/업데이트/삽입 할 수 있습니다. 행이 새로 고침/다시 그려지면 사용자가 어떻게 든 데이터와 상호 작용하면 그는 입력의 데이터를 잃고 선택 상자 등의 '포커스'를 잃고 일부 이벤트는 '실행되지 않습니다.'... That 's 왜 나는 가능한 한 많은 데이터를 분리하는 것이 중요하다고 생각합니다. – Jonathan