خطأ TS2532: الكائن قد يكون 'undefined' في TypeScript — كيف أصلحه؟
مرحبًا بالجميع! أنا مبتدئ في TypeScript وأعمل على مشروع باستخدام Firebase Cloud Functions و Firestore. لدي دالة تجلب بيانات من مستند Firestore وتعالجها. لكن TypeScript يعطيني باستمرار خطأ TS2532: "الكائن قد يكون 'undefined'". إليك الكود الخاص بي:
```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; // خطأ TS2532 هنا
const userAge = data.age; // وهنا أيضًا
console.log(`User ${userName} is ${userAge} years old.`);
});
```
أفهم أن `data` قد تكون `undefined` إذا لم يكن المستند موجودًا. لكن كيف أتعامل مع هذا بشكل صحيح؟ جربت ببساطة التحقق بـ `if (data)`، لكن الخطأ لا يزال يظهر في الأسطر التي أصل فيها إلى الخصائص. هل هناك طريقة أكثر أناقة؟