SYIDAX / DATA GRID

실시간 협업 PRO

같은 데이터의 편집과 접속 상태를 여러 사용자와 공유합니다.

시작하기
실시간 협업샘플 주문 데이터
120 rows
Grid를 불러오는 중입니다…
최근 결과

어떤 사용자들이 어떤 주문 목록을 함께 편집할지 정하고, 인증된 실시간 서버와 방 ID를 준비하세요.

코드 보기
현재 미리보기

사용 가이드

#

여러 사용자가 같은 주문 목록을 보면서 편집 결과와 접속 상태를 공유해야 할 때 사용합니다.

앱에서 연결하는 순서

  1. 같은 작업 공간 정하기

    어떤 사용자들이 어떤 주문 목록을 함께 편집할지 정하고, 인증된 실시간 서버와 방 ID를 준비하세요.

  2. 협업 연결 구성

    앱에서 Grid의 협업 설정을 실시간 연결에 연결합니다. 읽기·편집 권한과 같은 셀을 동시에 바꿨을 때의 처리 방식을 정하세요.

  3. 두 사용자로 검증

    서로 다른 브라우저에서 같은 방을 열고 한쪽 값을 수정해 보세요. 다른 쪽 반영, 접속 표시, 연결 끊김 후 복구를 확인합니다.

확인할 결과

앱에서 같은 작업 공간의 변경과 사용자 상태를 주고받을 수 있습니다.

이 문서의 샘플 Grid는 협업 서버에 연결되어 있지 않습니다. 브라우저 탭을 두 개 여는 것만으로 샘플 데이터가 동기화되지는 않습니다.

알아두면 쉬운 용어

방 ID
어떤 사용자와 데이터를 함께 공유할지 구분하는 이름입니다.
동시 편집 충돌
여러 사용자가 같은 값을 서로 다르게 수정한 상황입니다.

제품에 이 기능을 적용하려면 Pro 런타임과 유효한 라이선스가 필요합니다.

API reference

#

나머지 속성7
Attribute / Property타입 / 기본값설명
PRO
collaborationRoom
string기본값 undefinedCollaboration 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기본값 undefinedOptional realtime sync URL (WebSocket). Omit for in-process/same-page demos.
PRO
collabUserName
string기본값 undefinedThis client's display name / color for presence.
PRO
collabUserColor
string기본값 undefined이름을 선택해 타입 계약을 확인하세요.
PRO
collabPresence
boolean기본값 trueBroadcast this client's cursor/selection presence (default true).
PRO
collabConflictUi
boolean기본값 trueShow 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
GridRemoteEditAppliedDetailFires after a remote collaboration edit is integrated (Phase 3.1.D).
PRO
GridPresenceChangedDetailFires when the set of remote collaborators (presence) changes (Phase 3.1.D).
PRO
GridCollabConflictFires when a concurrent same-cell edit is resolved by the CRDT (Phase 3.1.D).
PRO
GridCollaboratorInfoFires 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 .