استفد من أنواع الأدوات المساعدة في TypeScript ويمكنك الاستفادة من التعليمات البرمجية الأكثر تعبيرًا والتي تكون أكثر قوة أيضًا.

TypeScript هي مجموعة شاملة من JavaScript تتيح لك إضافة كتابة ثابتة إلى قاعدة التعليمات البرمجية الخاصة بك. بفضل نظام الكتابة القوي ، توفر TypeScript إمكانية قراءة محسّنة للكود والقدرة على اكتشاف الأخطاء أثناء وقت الترجمة.

أحد الجوانب الأكثر فائدة في TypeScript هو أنواع الأدوات المساعدة المضمنة ، والتي يمكن أن تبسط جهود الترميز الخاصة بك وتوفر وقت التطوير الثمين. ألقِ نظرة على أنواع الأدوات المساعدة TypeScript التي لا بد من معرفتها والتي يمكن أن تساعدك في كتابة تعليمات برمجية آمنة من النوع بسهولة.

تيبسكريبت يتيح لك نوع الأداة الجزئية جعل أي خصائص لكائن اختيارية. يتيح لك إنشاء كائنات بخصائص معينة قد تكون مفقودة أو غير محددة. خذ على سبيل المثال:

واجهه المستخدم مستخدم { 
اسم: خيط;
عمر: رقم;
بريد إلكتروني: خيط;
}

باستخدام نوع المنفعة الجزئية، يمكنك إنشاء نوع جديد مع تعيين جميع خصائص واجهة المستخدم على أنها اختيارية:

يكتب OptionalUser = جزئي

الآن ، يمكنك إنشاء مثيل من نوع OptionalUser مع تحديد بعض الخصائص فقط:

instagram viewer
مقدار ثابت المستخدم: OptionalUser = {name: "جون" };

قد تواجه مواقف تحتاج فيها إلى إنشاء كائن بخصائص اختيارية معينة. هذا يمكن أن يكون في متناول اليد خاصة عند بناء النماذج التي تحتوي على حقول متعددة ، حيث قد لا تكون جميعها مطلوبة وفي مثل هذه الحالات ، قد تكون المنفعة الجزئية حيوية.

يمكن أن يساعدك نوع الأداة المساعدة Pick من TypeScript في إنشاء نوع جديد عن طريق اختيار مجموعة فرعية فقط من الخصائص من نوع موجود. يكون مفيدًا عندما تحتاج إلى تضييق نطاق كائن أكبر إلى عدد قليل من الخصائص المطلوبة أو إذا كنت ترغب في فرض كتابة صارمة على الخصائص التي تحتاجها.

واجهه المستخدم مستخدم { 
موقع: خيط;
عمر: رقم;
بريد إلكتروني: خيط;
}

يكتب PersonWithoutEmail = انتقاء'موقع' | 'عمر'>;

مقدار ثابت الشخص: PersonWithoutEmail = {
موقع: 'الولايات المتحدة الأمريكية',
عمر: 30
};

في هذا المثال ، تحدد الواجهة المسماة "المستخدم" ثلاث خصائص: البريد الإلكتروني والعمر والموقع.

باستخدام ملف اختر نوع المنفعة، يمكنك استخراج خصائص "الموقع" و "العمر" بشكل انتقائي من واجهة المستخدم ، مما يؤدي إلى إنشاء نوع جديد يسمى "PersonWithoutEmail".

يمكنك بعد ذلك إنشاء نسخة جديدة من النوع "PersonWithoutEmail" وتعيين قيم لخصائص "الموقع" و "العمر" فقط. نظرًا لأن خاصية "البريد الإلكتروني" قد تم حذفها من هذا النوع ، فلا يمكنك تعيينها للكائن.

باستخدام نوع الأداة المساعدة Pick ، ​​يمكنك إنشاء نوع جديد يتضمن الخصائص التي تريدها فقط. يمكن أن يساعد ذلك في جعل شفرتك أكثر قابلية للقراءة وأسهل في العمل معها.

يشير النوع للقراءة فقط إلى أن سمات الكائن لا يمكن تغييرها بعد إنشائها. يضمن هذا النوع تناسق بيانات الكائن على المدى الطويل ، مما ينتج عنه معالجة أكثر سلاسة وأمانًا للكود.

واجهه المستخدم مستخدم {
الاسم للقراءة فقط: خيط;
عمر القراءة فقط: رقم;
بريد إلكتروني للقراءة فقط: خيط;
}

باستخدام نوع الأداة للقراءة فقط، يمكنك إنشاء نوع جديد مع تعيين جميع خصائص واجهة المستخدم للقراءة فقط:

يكتب ReadonlyUser = للقراءة فقط

يمكنك تحديد قيم الخاصية عند إنشاء نسخة ReadonlyUser ::

مقدار ثابت المستخدم: ReadonlyUser = { 
اسم: "جون",
عمر: 30,
بريد إلكتروني: "[email protected]"
};

عندما تقوم بتمييز خصائص عنصر ما على أنها للقراءة فقط ، فإن محاولة تعديل قيم هذه الخصائص تصبح مستحيلة:

user.name = "جين";
// خطأ: لا يمكن التعيين إلى "الاسم" لأنها خاصية للقراءة فقط.

النوع Readonly مهم بشكل خاص في المواقف التي تريد فيها التأكد من أن كائنًا معينًا لا يتغير ، بغض النظر عن الإشارة إليه. على سبيل المثال ، إذا كان لديك كائن يحتوي على إعدادات تكوين مهمة ، فقد ترغب في التأكد من بقائه بدون تغيير.

يضمن هذا النوع وجود جميع الخصائص الأساسية للكائن ، بينما النوع الجزئي يوفر مزيدًا من المرونة من خلال السماح لك بتحديد مجموعة فرعية من الخصائص مع ترك الآخرين خياري. يمكن أن يكون هذا مفيدًا في المواقف التي قد لا تكون فيها بعض الخصائص ضرورية أو عرضة للتغيير.

واجهه المستخدم مستخدم {
اسم: خيط;
موقع: رقم;
عنوان: خيط;
}

من خلال استخدام نوع الأداة المطلوبة، من الممكن إنشاء نوع جديد يجمع كل سمات واجهة المستخدم مع طلب وجود كل من هذه الخصائص. لا يمكن إنشاء مثيل RequiredUser إلا بعد تعيين جميع خصائصه بشكل صحيح.

مقدار ثابت المستخدم: RequiredUser = { 
اسم: "فلان الفلاني",
موقع: "الولايات المتحدة الأمريكية",
عنوان: "كانساس 9745-0622"
};

يضمن استخدام نوع الأداة المساعدة المطلوبة وجود جميع الخصائص المطلوبة داخل الكائن.

يسمح لك نوع الأداة Omit بإنشاء نوع جديد عن طريق استبعاد خصائص معينة من نوع موجود.

واجهه المستخدم شخص {
موقع: خيط;
عمر: رقم;
بريد إلكتروني: خيط;
}

يكتب PersonWithoutEmail = حذف'بريد إلكتروني'>;
مقدار ثابت الشخص: PersonWithoutEmail = {الموقع: "الولايات المتحدة الأمريكية"; عمر: 30 };

تحتوي واجهة الشخص على ثلاث خصائص: العمر والموقع والبريد الإلكتروني. يستخدم النوع PersonWithoutEmail نوع الأداة المساعدة Omit لتضمين جميع خصائص كائن الشخص ، باستثناء البريد الإلكتروني. يمكنك بعد ذلك إنشاء مثيل من هذا النوع الجديد ، بدون تحديد قيمة لخاصية البريد الإلكتروني.

يجب أن تضع في اعتبارك أن نوع الأداة Omit يتشارك أوجه تشابه كبيرة مع نوع الأداة المساعدة Pick ، ​​حيث أنه يمكّنك من ابتكار نوع جديد باستخدام الخصائص التي تحددها فقط.

يمكنك استخدام نوع الأداة المساعدة للسجل لتعريف نوع كائن يكون للمفاتيح والقيم نوع معين له. تعريفه هو:

يكتب سِجِلّيمتد مفتاح أي، T> = {[P في K]: T ؛} ؛

يربط هذا النوع T بقيمة كل مفتاح ، بينما K هو اتحاد مفاتيح من أي نوع. الكائن الناتج له نوع خاصيته P مضبوطة على T.

ضع في اعتبارك سيناريو نوع الكائن مع مفاتيح السلسلة والقيم الرقمية. في هذه الحالة ، يمكنك تطبيق سجل نوع الأداة مثل:

يكتب MyRecord = سجل <خيط, رقم>;

مقدار ثابت myObject: MyRecord = {
"فو": 1,
"حاجِز": 2,
"باز": 3,
}

يحدد هذا المثال MyRecord كنوع كائن بمفاتيح سلسلة وقيم رقمية. يمثل كائن myObject نموذجًا لهذا النوع ، مع تعيين المفاتيح "foo" و "bar" و "baz" للقيم المقابلة لها.

كشفت هذه المقالة عن القوة الهائلة لأنواع الأدوات المساعدة TypeScript - يمكن أن تكون أحد الأصول القيمة عندما يتعلق الأمر بتبسيط التعليمات البرمجية الخاصة بك وجعل التطوير أسرع وأكثر كفاءة. يمكن لهذه الأنواع من الأدوات المساعدة و TypeScript بشكل عام أن تفعل المعجزات للتأكد من أن شفرتك دائمًا خالية من الأخطاء وتلتزم بهياكل معينة.