Avatar ·

Как правильно отклонить (reject) промис в async/await синтаксисе в TypeScript?

```html السلام عليكم! بدأت بتعلم TypeScript و async/await، لكنني واجهت مشكلة. في التوثيق مكتوب أن الدالة async ترجع دائماً Promise. عندما أريد إكمال الـ promise بنجاح، أقوم بإرجاع القيمة. لكن كيف يمكن رفض الـ promise (reject) بشكل صحيح داخل دالة async؟ هذا مثال لا يعمل كما توقعت: ```typescript async function fetchUserData(userId: string): Promise { if (!userId) { // أريد هنا رفض الـ promise مع خطأ return new Error('User ID is required'); // هذا غير صحيح } const response = await fetch(`/api/users/${userId}`); return response.json(); } ``` جربت استخدام `throw new Error()`، لكن يبدو لي هذا غريباً، فـ throw تستخدم عادةً للاستثناءات وليس لرفض الـ promises. كذلك رأيت في أمثلة قديمة استخدام `Promise.reject()`، لكني لا أفهم كيفية دمجها مع async. أرجو توضيح الطريقة الصحيحة لرفض الـ promise في دالة async؟ وكيف ذلك ```