Erro TS2532: Object is possibly 'undefined' em TypeScript — como corrigir?
Olá a todos! Sou novo em TypeScript e estou trabalhando em um projeto com Firebase Cloud Functions e Firestore. Tenho uma função que obtém dados de um documento do Firestore e os processa. Mas o TypeScript está constantemente gerando o erro TS2532: "Object is possibly 'undefined'". Aqui está meu código:
```typescript
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
admin.initializeApp();
export const processUserData = functions.firestore
.document('users/{userId}')
.onCreate(async (snap, context) => {
const data = snap.data();
const userName = data.name; // Erro TS2532 aqui
const userAge = data.age; // E aqui também
console.log(`User ${userName} is ${userAge} years old.`);
});
```
Eu entendo que `data` pode ser `undefined` se o documento não existir. Mas como lidar com isso corretamente? Tentei simplesmente verificar com `if (data)`, mas o erro ainda aparece nas linhas onde acesso as propriedades. Existe alguma forma mais elegante?