SYIDAX / DATA GRID
실시간 협업 PRO
같은 데이터의 편집과 접속 상태를 여러 사용자와 공유합니다.
실시간 협업샘플 주문 데이터
120 rowsGrid를 불러오는 중입니다…
최근 결과
어떤 사용자들이 어떤 주문 목록을 함께 편집할지 정하고, 인증된 실시간 서버와 방 ID를 준비하세요.
코드 보기
현재 미리보기
코드에 포함된 샘플 데이터 · 6행
사용 가이드
#여러 사용자가 같은 주문 목록을 보면서 편집 결과와 접속 상태를 공유해야 할 때 사용합니다.
앱에서 연결하는 순서
- 같은 작업 공간 정하기
어떤 사용자들이 어떤 주문 목록을 함께 편집할지 정하고, 인증된 실시간 서버와 방 ID를 준비하세요.
- 협업 연결 구성
앱에서 Grid의 협업 설정을 실시간 연결에 연결합니다. 읽기·편집 권한과 같은 셀을 동시에 바꿨을 때의 처리 방식을 정하세요.
- 두 사용자로 검증
서로 다른 브라우저에서 같은 방을 열고 한쪽 값을 수정해 보세요. 다른 쪽 반영, 접속 표시, 연결 끊김 후 복구를 확인합니다.
확인할 결과
앱에서 같은 작업 공간의 변경과 사용자 상태를 주고받을 수 있습니다.
이 문서의 샘플 Grid는 협업 서버에 연결되어 있지 않습니다. 브라우저 탭을 두 개 여는 것만으로 샘플 데이터가 동기화되지는 않습니다.
알아두면 쉬운 용어
- 방 ID
- 어떤 사용자와 데이터를 함께 공유할지 구분하는 이름입니다.
- 동시 편집 충돌
- 여러 사용자가 같은 값을 서로 다르게 수정한 상황입니다.
제품에 이 기능을 적용하려면 Pro 런타임과 유효한 라이선스가 필요합니다.
API reference
#나머지 속성7
| Attribute / Property | 타입 / 기본값 | 설명 |
|---|---|---|
PRO collaborationRoom | string기본값 undefined | Collaboration room id. When set (Pro build), the grid joins the room and cell edits sync across clients via the self-implemented CRDT. Community: no-op. |
PRO realtimeUrl | string기본값 undefined | Optional realtime sync URL (WebSocket). Omit for in-process/same-page demos. |
PRO collabUserName | string기본값 undefined | This client's display name / color for presence. |
PRO collabUserColor | string기본값 undefined | 이름을 선택해 타입 계약을 확인하세요. |
PRO collabPresence | boolean기본값 true | Broadcast this client's cursor/selection presence (default true). |
PRO collabConflictUi | boolean기본값 true | Show the built-in conflict UI when this client loses a concurrent same-cell edit: a red flash on the cell + a transient notice naming the winning editor. The `collabConflictResolved` event fires regardless, so a host can turn this off and render its own. |
PRO collabPersistence | 'none' | 'indexeddb'기본값 'none' | Local op persistence: `'none'` (default) or `'indexeddb'` to survive a reload. |
이벤트6
| 이벤트 | detail 타입 | 설명 |
|---|---|---|
PRO | GridRemoteEditAppliedDetail | Fires after a remote collaboration edit is integrated (Phase 3.1.D). |
PRO | GridPresenceChangedDetail | Fires when the set of remote collaborators (presence) changes (Phase 3.1.D). |
PRO | GridCollabConflict | Fires when a concurrent same-cell edit is resolved by the CRDT (Phase 3.1.D). |
PRO | GridCollaboratorInfo | Fires when a collaborator joins the room (Phase 3.1.D). |
PRO | { id: string } | Fires when a collaborator leaves the room (Phase 3.1.D). |
PRO | { status: GridSyncStatus } | Fires when the collaboration sync status changes (Phase 3.1.D). |
메서드4
| 메서드 / 인수 | 반환 타입 | 설명 |
|---|---|---|
PRO opts?: { realtimeUrl?: string; userName?: string; userColor?: string; presence?: boolean; persistence?: 'none' | 'indexeddb' } | Promise<GridSyncStatus> | Join the collaboration room (Pro, grid.collaboration). An existing session answers its status and a grid without a room answers 'offline' (nothing to join — no license read). Otherwise the request is refused (rejects with the license error) unless entitled; a build without the collab runtime rejects `module-missing` and a runtime or connection failure `load-failed` — never a silent 'offline'. Cell edits then sync across clients in the same `collaborationRoom`. |
PRO | Promise<void> | Leave the collaboration room. |
PRO | Promise<GridSyncStatus> | Current sync status — 'offline' in Community / when not connected. |
PRO | Promise<GridCollaboratorInfo[]> | Connected collaborators . |
EXPLORE CAPABILITIES
기능별로 자세히 살펴보기
기능별 사용 상황과 설정 방법을 살펴보세요. 직접 체험하는 예제와 앱에서 연결하는 기능을 각 가이드에 안내합니다.