Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Type Error: toDate() not found on Timestamp fields in 21.0.0-rc.0

Aberta
#3,681 2 comentários 1 reação 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
65/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
firebase, typescript
Domínio
database

Direção de pesquisa

Comece reproduzindo o erro de TypeScript no exemplo fornecido com docData e DocumentReference e, em seguida, rastreie os tipos das operações de leitura do Firestore em torno de Timestamp, FieldValue e WithFieldValue. Compare as versões afetadas do Firebase SDK e identifique onde os resultados de leitura adquirem a união orientada à escrita. Considera-se concluído quando o exemplo compila e os campos Timestamp expõem toDate() sem o tipo FieldValue.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

comp: firestore comp: typings needs: more info type: bug version: current (v17+)

Issue

After upgrading to @angular/fire@21.0.0-rc.0, TypeScript compilation fails when calling .toDate() on Timestamp fields from Firestore documents.

Error

TS2339: Property 'toDate' does not exist on type 'FieldValue | WithFieldValue<Timestamp>'.
  Property 'toDate' does not exist on type 'FieldValue'.

Reproduction

import { doc, docData, Timestamp } from '@angular/fire/firestore';

interface Member {
  createdAt: Timestamp;
}

const member$ = docData(doc(firestore, 'members/123') as DocumentReference<Member>);

member$.subscribe((member) => {
  // ERROR: Property 'toDate' does not exist
  const date = member?.createdAt.toDate();
});

Environment

  • @angular/fire: 21.0.0-rc.0
  • @angular/core: 21.0.1
  • firebase: 12.6.0 (from 11.8.0)
  • TypeScript: 5.9.3

Analysis

Timestamp fields are being typed as FieldValue | WithFieldValue<Timestamp> instead of just Timestamp. The WithFieldValue type (meant for writes) is incorrectly being applied to read operations, causing TypeScript to think the field could be FieldValue, which doesn't have .toDate().

This appears to be a regression from the Firebase SDK v11→v12 upgrade in this RC.

Linguagem predominante
TypeScript
Estrelas
7.8k
Forks
2.2k
Merge médio
3d 6h
PRs com merge (30d)
5

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de angular/angularfire

Todas as issues de angular/angularfire

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.