WriteBatch class

쓰기 일괄 처리는 여러 쓰기를 단일 원자 단위로 수행하는 데 사용됩니다.

WriteBatch 객체는 writeBatch()를 호출하여 가져올 수 있습니다. 쓰기 배치에 쓰기를 추가하는 메서드를 제공합니다. WriteBatch.commit()이 호출될 때까지 어떠한 쓰기도 커밋되거나 로컬에 표시되지 않습니다.

서명:

export declare class WriteBatch 

메소드

메서드 특수키 설명
commit() 이 쓰기 배치의 모든 쓰기를 단일 원자 단위로 커밋합니다.이러한 쓰기 결과는 반환된 프로미스가 확인된 후에 발생하는 문서 읽기에만 반영됩니다. 클라이언트가 오프라인 상태인 경우 쓰기가 실패합니다. 클라이언트가 온라인 상태가 될 때까지 로컬 수정 또는 버퍼 쓰기를 확인하려면 전체 Firestore SDK를 사용하세요.
delete(documentRef) 제공된 DocumentReference에서 참조하는 문서를 삭제합니다.
set(documentRef, data) 제공된 DocumentReference로 참조되는 문서에 씁니다. 문서가 아직 없으면 새로 만듭니다.
set(documentRef, 데이터, 옵션) 제공된 DocumentReference로 참조되는 문서에 씁니다. 문서가 아직 없으면 새로 만듭니다. merge 또는 mergeFields를 제공하면 제공된 데이터를 기존 문서에 병합할 수 있습니다.
update(documentRef, data) 제공된 DocumentReference로 참조되는 문서의 필드를 업데이트합니다. 존재하지 않는 문서를 적용하면 업데이트가 실패합니다.
update(documentRef, field, value, moreFieldsAndValues) DocumentReference에서 참조하는 문서의 필드를 업데이트합니다. 존재하지 않는 문서를 적용하면 업데이트가 실패합니다.중첩된 필드는 점으로 구분된 필드 경로 문자열을 제공하거나 FieldPath 객체를 제공하여 업데이트할 수 있습니다.

WriteBatch.commit()

이 쓰기 배치의 모든 쓰기를 단일 원자 단위로 커밋합니다.

이러한 쓰기 결과는 반환된 프로미스가 확인된 후에 발생하는 문서 읽기에만 반영됩니다. 클라이언트가 오프라인 상태인 경우 쓰기가 실패합니다. 클라이언트가 온라인 상태가 될 때까지 로컬 수정 또는 버퍼 쓰기를 확인하려면 전체 Firestore SDK를 사용하세요.

서명:

commit(): Promise<void>;

반환:

프로미스<void>

배치의 모든 쓰기가 원자 단위로 백엔드에 성공적으로 기록되면 Promise이 확인됩니다 (오프라인 상태에서는 확인되지 않음).

WriteBatch.delete()

제공된 DocumentReference에서 참조하는 문서를 삭제합니다.

서명:

delete<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>): WriteBatch;

매개변수

매개변수 유형 설명
문서 참조 DocumentReference<AppModelType, DBMModelType> 삭제할 문서에 대한 참조입니다.

반환:

WriteBatch

WriteBatch 인스턴스 메서드 호출 체이닝에 사용됩니다.

WriteBatch.set()

제공된 DocumentReference로 참조되는 문서에 씁니다. 문서가 아직 없으면 새로 만듭니다.

서명:

set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): WriteBatch;

매개변수

매개변수 유형 설명
문서 참조 DocumentReference<AppModelType, DBMModelType> 설정할 문서에 대한 참조입니다.
데이터 WithFieldValue<AppModelType> 문서의 필드 및 값의 객체입니다.

반환:

WriteBatch

WriteBatch 인스턴스 메서드 호출 체이닝에 사용됩니다.

WriteBatch.set()

제공된 DocumentReference로 참조되는 문서에 씁니다. 문서가 아직 없으면 새로 만듭니다. merge 또는 mergeFields를 제공하면 제공된 데이터를 기존 문서에 병합할 수 있습니다.

서명:

set<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): WriteBatch;

매개변수

매개변수 유형 설명
문서 참조 DocumentReference<AppModelType, DBMModelType> 설정할 문서에 대한 참조입니다.
데이터 PartialWithFieldValue<AppModelType> 문서의 필드 및 값의 객체입니다.
옵션 SetOptions 집합 동작을 구성하는 객체입니다.

반환:

WriteBatch

WriteBatch 인스턴스 메서드 호출 체이닝에 사용됩니다.

예외

오류 - 제공된 입력이 유효한 Firestore 문서가 아닌 경우

WriteBatch.update()

제공된 DocumentReference로 참조되는 문서의 필드를 업데이트합니다. 존재하지 않는 문서를 적용하면 업데이트가 실패합니다.

서명:

update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): WriteBatch;

매개변수

매개변수 유형 설명
문서 참조 DocumentReference<AppModelType, DBMModelType> 업데이트할 문서에 대한 참조입니다.
데이터 UpdateData<DbModelType> 문서를 업데이트할 필드와 값이 포함된 객체입니다. 필드에는 문서 내의 중첩된 필드를 참조하는 점이 포함될 수 있습니다.

반환:

WriteBatch

WriteBatch 인스턴스 메서드 호출 체이닝에 사용됩니다.

예외

오류 - 제공된 입력이 유효한 Firestore 데이터가 아닌 경우

WriteBatch.update()

DocumentReference에서 참조하는 문서의 필드를 업데이트합니다. 존재하지 않는 문서를 적용하면 업데이트가 실패합니다.

중첩된 필드는 점으로 구분된 필드 경로 문자열을 제공하거나 FieldPath 객체를 제공하여 업데이트할 수 있습니다.

서명:

update<AppModelType, DbModelType extends DocumentData>(documentRef: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): WriteBatch;

매개변수

매개변수 유형 설명
문서 참조 DocumentReference<AppModelType, DBMModelType> 업데이트할 문서에 대한 참조입니다.
필드 문자열 | FieldPath 업데이트할 첫 번째 필드입니다.
알 수 없음 첫 번째 값입니다.
moreFieldsAndValues 알 수 없음[] 추가 키-값 쌍입니다.

반환:

WriteBatch

WriteBatch 인스턴스 메서드 호출 체이닝에 사용됩니다.

예외

오류 - 제공된 입력이 유효한 Firestore 데이터가 아닌 경우