WriteBatch class

단일 원자 단위로 여러 쓰기를 수행하는 데 사용되는 쓰기 배치입니다.

WriteBatch 객체는 writeBatch()를 호출하여 얻을 수 있습니다. . 쓰기 일괄 처리에 쓰기를 추가하는 방법을 제공합니다. WriteBatch.commit()가 호출될 때까지 쓰기는 커밋되거나 로컬로 표시되지 않습니다.

서명:

export declare class WriteBatch 

행동 양식

방법 수정자 설명
저지르다() 이 쓰기 일괄 처리의 모든 쓰기를 단일 원자 단위로 커밋합니다. 이러한 쓰기의 결과는 반환된 Promise가 해결된 후에 발생하는 문서 읽기에만 반영됩니다. 클라이언트가 오프라인이면 쓰기가 실패합니다. 클라이언트가 온라인 상태가 될 때까지 로컬 수정 사항이나 버퍼 쓰기를 확인하려면 전체 Firestore SDK를 사용하세요.
삭제(문서참조) 제공된 DocumentReference 에서 참조하는 문서를 삭제합니다. .
세트(문서참조, 데이터) 제공된 DocumentReference 에서 참조하는 문서에 씁니다. . 문서가 아직 존재하지 않으면 생성됩니다.
세트(documentRef, 데이터, 옵션) 제공된 DocumentReference 에서 참조하는 문서에 씁니다. . 문서가 아직 존재하지 않으면 생성됩니다. merge 또는 mergeFields 제공하면 제공된 데이터를 기존 문서에 병합할 수 있습니다.
업데이트(문서참조, 데이터) 제공된 DocumentReference 에서 참조하는 문서의 필드를 업데이트합니다. . 존재하지 않는 문서에 적용하면 업데이트가 실패합니다.
업데이트(documentRef, 필드, 값, moreFieldsAndValues)DocumentReference 에서 참조하는 문서의 필드를 업데이트합니다. . 존재하지 않는 문서에 적용하면 업데이트가 실패합니다. 중첩된 필드는 점으로 구분된 필드 경로 문자열을 제공하거나 FieldPath 개체를 제공하여 업데이트할 수 있습니다.

WriteBatch.commit()

이 쓰기 일괄 처리의 모든 쓰기를 단일 원자 단위로 커밋합니다.

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

서명:

commit(): Promise<void>;

보고:

약속<공허>

일괄 처리의 모든 쓰기가 원자 단위로 백엔드에 성공적으로 기록되면 Promise 해결됩니다(오프라인 상태에서는 해결되지 않습니다).

WriteBatch.delete()

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

서명:

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

매개변수

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

보고:

쓰기배치

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

WriteBatch.set()

제공된 DocumentReference 에서 참조하는 문서에 씁니다. . 문서가 아직 존재하지 않으면 생성됩니다.

서명:

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

매개변수

매개변수 유형 설명
문서참조 문서참조 <AppModelType, DbModelType> 설정할 문서에 대한 참조입니다.
데이터 필드값 포함 <앱모델 유형> 문서에 대한 필드 및 값의 개체입니다.

보고:

쓰기배치

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

WriteBatch.set()

제공된 DocumentReference 에서 참조하는 문서에 씁니다. . 문서가 아직 존재하지 않으면 생성됩니다. merge 또는 mergeFields 제공하는 경우 , 제공된 데이터를 기존 문서에 병합할 수 있습니다.

서명:

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

매개변수

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

보고:

쓰기배치

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

예외

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

쓰기배치.업데이트()

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

서명:

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

매개변수

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

보고:

쓰기배치

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

예외

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

쓰기배치.업데이트()

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

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

서명:

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

매개변수

매개변수 유형 설명
문서참조 문서참조 <AppModelType, DbModelType> 업데이트할 문서에 대한 참조입니다.
필드 문자열 | 필드 경로 업데이트할 첫 번째 필드입니다.
알려지지 않은 첫 번째 값입니다.
moreFieldsAndValues 알려지지 않은[] 추가 키 값 쌍.

보고:

쓰기배치

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

예외

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