Fonction De Classe Documentreference.set() est appelé avec des données non valides. Non pris en charge valeur de champ: une coutume Budget de l'objet

Code ci-dessous fonctionne très bien jusqu'à aujourd'hui. Mais je ne sais pas maintenant, il ne fonctionne pas et donne l'erreur ci-dessous.Pourriez-vous me dire pourquoi?

Erreur: Fonction De Classe Documentreference.set() est appelé avec des données non valides.
Non pris en charge valeur de champ: une coutume Budget de l'objet

 export class Project {
        id: string = null;
        name: string;
        budgetList?: Budget[];
    }

export class Budget {
    id: string;
    amount: number;
    contingency: number = 20;
    budgetGroup: BudgetGroup = new BudgetGroup();
    creationTime: string;
}

code:

  async create(data: DtoProject): Promise<Project> {
    try {
      const projectId: string = this.fireStore.createId();
      const budgets = this.budgetProvider.createBudgets(data.budgetList, projectId);//budgets
      const proj: Project = {
        id: data.id,
        name: data.name,
        budgetList: budgets,//here it has the error
      }
      proj.id = projectId;
      await this.fireStore.doc<Project>(`projects/${projectId}/`).set(proj));//project
      }
 }

  createBudgets(data: Budget[], projectId: string): Budget[] {
    let budgets: Budget[] = [];
    forEach(data, (d) => {
      const budgetId: string = this.fireStore.createId();
      d.id = budgetId;
      budgets.push(d);
      this.fireStore.doc<Budget>(`projects/${projectId}/budgets/${budgetId}`).set({
        id: budgetId,
        amount: d.amount,
        contingency: d.contingency,
        budgetGroup: d.budgetGroup,
        creationTime: moment().format()
      })
    })
    return budgets;
  }
Je suis tombé sur cette erreur lors du passage dans un objet json où certaines valeurs de champ de façon inattendue null

OriginalL'auteur Sampath | 2018-01-08