programing

함수 및 Firestore 사용 시 필드 값이 정의되지 않음

cafebook 2023. 6. 27. 23:39
반응형

함수 및 Firestore 사용 시 필드 값이 정의되지 않음

다음과 같은 기능이 있습니다.

const functions = require('firebase-functions');
const admin = require('firebase-admin');
const FieldValue = require('firebase-admin').FieldValue;

module.exports = functions.firestore
  .document('students/{studentId}')
  .onDelete(event => {
    const student = event.data.previous.data();
    const { id, semester } = student;
    const classId = student.class;
    const deleteObj = {};
    deleteObj[id] = FieldValue.delete(); //Line 12, this is where the error orccurs
    return admin
      .firestore()
      .collection('semesters')
      .doc(semester)
      .collection('students')
      .doc(classId)
      .update(deleteObj);
  });

실행할 때마다 다음 오류가 발생합니다.

TypeError: Cannot read property 'delete' of undefined
    at module.exports.functions.firestore.document.onDelete.event (/user_code/deleteStudent.js:12:37)

문서를 보면 제가 뭘 잘못하고 있는지 정말 알 수 없습니까?

// Get the `FieldValue` object
var FieldValue = require("firebase-admin").FieldValue;

// Create a document reference
var cityRef = db.collection('cities').doc('BJ');

// Remove the 'capital' field from the document
var removeCapital = cityRef.update({
    capital: FieldValue.delete()
});

갱신하다

따라서 웹에서 동등한 기능을 사용하는 것이 효과적인 것으로 보입니다.admin.firestore.FieldValue.delete()하지만 내가 nodejs 환경에 있으니 그것은 버그처럼 보입니다.파이어베이스가 그 사실을 확인하거나 부인할 수 있습니까?기꺼이 버그 보고서를 제출하겠습니다.

문서에 실수가 있었던 것으로 밝혀졌습니다. 올바른 가져오기 작업은 다음과 같습니다.const FieldValue = require('firebase-admin').firestore.FieldValue;

갱신하다

파이어베이스는 몇 시간 안에 응답했고 최대한 빨리 문서를 수정하고 있다고 말해야 합니다.

효과가 있었어요!

Firebase-admin 필요

const admin = require('firebase-admin')

이 상수 추가

const fieldValue = admin.firestore.FieldValue; 

지금 사용

fieldValue.delete()

자세한 내용은 otcollect.com/post 을 참조하십시오.

여기서 github에서 솔루션을 찾을 수 있습니다.

유형 스크립트 사용

"firebase-admin": "^11.0.0"
"firebase-functions": "^3.22.0"

사용해야 합니다.

import { FieldValue } from 'firebase-admin/firestore'

에도 마찬가지입니다.TimeStamp

언급URL : https://stackoverflow.com/questions/47091940/fieldvalue-undefined-when-using-functions-and-firestore

반응형