
프론트엔드
SpreadJS Designer
두줄요약
SpreadJS Designer에서 새로고침 버그와 시트 추가·삭제 제한 요구를 해결한 과정을 정리했습니다. 커맨드 상태 확인과 컨텍스트 메뉴 제어가 핵심이었습니다.
핵심 내용
- SpreadJS Designer 적용 과정에서 새로고침 시 사이드바·바인딩패스가 사라지는 버그와, 시트 추가·바인딩 셀 삭제를 막는 요구사항을 함께 다룬 문제 해결기
- 체크박스 타입 커맨드의 상태 토글 특성과 Designer의 리본·컨텍스트 메뉴·커맨드 연결 구조를 파악해 원인을 좁힘
- 시트 전환 시 ActiveSheetChanged로 사이드바를 갱신하고, contextMenu.onOpenMenu 오버라이드와 newTabVisible 옵션으로 삭제·추가 경로를 제어
적용해볼 점
- 커맨드 실행 전 상태 확인으로 토글형 동작의 의도치 않은 반전 방지
- 시트 보호보다 메뉴/커맨드 단위 제어가 요구사항에 더 적합한지 먼저 검토
- Designer 내부 경로를 이해해야 리본과 우클릭 메뉴를 일관되게 통제 가능

