Programming TypeScript
Kengaytirilgan obyekt turlari
Download 1.81 Mb.
|
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)
- Bu sahifa navigatsiya:
- Kirish operatori
Kengaytirilgan obyekt turlariOb'ektlar JavaScript-ning markaziy qismidir va TypeScript sizga ularni xavfsiz tarzda ifodalash va boshqarishning ko'plab usullarini beradi. Ob'ekt turlari uchun tip operatorlariBirlashma ( | ) va kesishish ( & ), 32-betdagi “Birlashma va kesishuv turlari” da tanishtirgan ikki turdagi operatorlarni eslaysizmi ? Ma'lum bo'lishicha, ular TypeScript sizga beradigan yagona turdagi operatorlar emas! Keling, shakllar bilan ishlash uchun qulay bo'lgan yana bir nechta turdagi operatorlarni ko'rib chiqaylik. Kirish operatoriSiz tanlagan ijtimoiy media API-dan olingan GraphQL API javobini modellashtirish uchun sizda murakkab ichki tur bor deylik: turi APIResponse = { foydalanuvchi : { userId : string do'stlar ro'yxati : { count : raqam do'stlar : { firstName : string familiya : string [] } } } Siz ushbu javobni APIdan olishingiz va keyin uni ko'rsatishingiz mumkin: funktsiyasi getAPIResponse () : Promise < APIResponse > { // ... } funktsiyasi renderFriendList ( do'stlar ro'yxati : noma'lum ) { // ... } ruxsat bering javob = kuting getAPIResponse ( ) renderFriendList ( javob . foydalanuvchi .friendList ) Do'stlar ro'yxati qanday bo'lishi kerak? (Hozircha noma'lum deb noma'lum .) Siz uni yozib, yuqori darajadagi APIResponse turini shu nuqtai nazardan qayta o'rnatishingiz mumkin: turi Do'stlar ro'yxati = { count : raqam do'stlar : { firstName : string familiya : string [] } turi APIResponse = { foydalanuvchi : { userId : string do'stlar ro'yxati : do'stlar ro'yxati } } funktsiyasi renderFriendList ( do'stlar ro'yxati : FriendList ) { // ... } Ammo keyin siz har doim ham xohlamaydigan yuqori darajadagi har bir turingiz uchun nomlarni topishingiz kerak bo'ladi (masalan, GraphQL sxemangizdan TypeScript turlarini yaratish uchun qurish vositasidan foydalansangiz). Buning o'rniga siz o'z turingizni kiritishingiz mumkin: turi APIResponse = { foydalanuvchi : { userId : string do'stlar ro'yxati : { count : raqam do'stlar : { firstName : string familiya : string [] } } } turi Do'stlar ro'yxati = APIResponse [ 'user' ][ 'friendList' ] funktsiyasi renderFriendList ( do'stlar ro'yxati : FriendList ) { // ... } Siz istalgan shaklga (ob'ekt, sinf konstruktori yoki sinf namunasi) va har qanday massivga kirishingiz mumkin. Masalan, individual do'st turini olish uchun: Download 1.81 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling