lokijs를 사용하는 별도의 백엔드 데이터 저장소에 대해 다소 차이가있는 handsontable을 사용하고 있습니다. 내 lokijs 데이터 저장소에는 행, 열, 데이텀 및 일부 메타 데이터가 있습니다.loaddata를 사용하여 handsontable에서 셀 메타 데이터를로드하는 방법이 있습니까?
사용자는 데이터베이스를 조정하고 페이지를 다시로드하는 몇 가지 작업을 수행 할 수 있습니다. lokijs 저장소를 2 차원 배열로 변환하고 loadData를 호출하여 사용자가 볼 수있는 페이지를 새로 고치는 기능이 있습니다.
문제 : 사용자는 셀을 '유효하지 않음'으로 표시 할 수 있습니다. 그러면 셀이 빨간색으로 바뀌고 lokijs db가 '유효하지 않음'부울로 업데이트됩니다. 사용자는 열을 숨길 수도 있습니다. 백엔드에서 이것은 선택된 컬럼을 제외하고 loaddata를 호출하는 새로운 2d 배열을 생성하여 handontable을 새로 고칩니다.
그러나 셀을 숨기면 열 색상이 잘 재생되지 않습니다. 방법의 I 색상 세포는 그래서 같다 :
cells: function (row, col, prop) {
var cellProperties = {};
var cell = cells.findOne({ "col": {"$eq": col}, "row": {"$eq": row}});
if (cell.invalid === true) {
cellProperties.renderer = highlightRowRenderer; //colors red
}
return cellProperties;
당신은 여기에서 문제를 볼 수 있습니다은 - 열이 숨겨진 경우, 강조에 하나의 오류에 의한 오프 그래서 다른 셀이 숨겨져 도착, 거기에 가장 밝은 부분.
이제이 문제를 해결하는 방법은 데이터로드시 강조 표시 정보를 메타 데이터로 전달하는 것입니다. 불행히도 나는 이것을 어떻게하는지 이해할 수 없다. 나는 그것이 다음과 같이 보일 것이라고 생각한다 :
var data =
[
[ { data: 5, color: red }, { data: 7, color: blue} ],
[ { data: 3, color: green}, { data: 2 } ]
];
hot.loadData(data);
그러나 나는 그것이 정확히 무엇인지 모른다. here과 비슷한 우려가있는 것으로 보입니다.하지만 동적으로 크기가 조정되지 않은 테이블 만 처리하는 것처럼 보입니다.
모든 의견을 보내 주시면 대단히 감사하겠습니다.