Programming TypeScript


turi Dialog = { id? : string } funktsiyasi


Download 1.81 Mb.
bet121/206
Sana01.11.2023
Hajmi1.81 Mb.
#1737990
1   ...   117   118   119   120   121   122   123   124   ...   206
Bog'liq
Boris Cherny Programming TypeScript Making Your JavaScript Applications (1)

turi Dialog = { id? : string }

funktsiyasi closeDialog ( dialog : Dialog ) { if ( ! dialog . id ) { qaytish
}
setTimeout (() => removeFromDOM ( muloqot oynasi ,
hujjat . getElementById ( dialog . id ) // TS2345 xatosi: turdagi argument // 'string | undefined' tayinlanmaydi // 'string' tipidagi parametrga.
)
)
}
funktsiyasi removeFromDOM ( muloqot oynasi : Dialog , element : Element ) {
element . parentNode . removeChild ( element ) // Xato TS2531: Ob'ekt bo'lishi mumkin
//' null'. o'chirish dialog . identifikatori }

Agar dialog allaqachon o'chirilgan bo'lsa (shuning uchun uning identifikatori yo'q ), biz ertaroq qaytamiz.
Biz dialog oynasining keyingi bosqichida DOM dan dialogni olib tashlaymiz, shunda dialogga bog'liq bo'lgan boshqa kodlar ishlashni tugatish imkoniyatiga ega bo'ladi.

Biz o‘q funksiyasi ichida bo‘lganimiz uchun endi biz yangi doiradamiz. TypeScript ba'zi kodlar va o'rtasidagi dialogni mutatsiyaga uchraganligini bilmaydi , shuning uchun biz kiritgan aniqlashtirishni bekor qiladi . Buning ustiga, agar dialog.id aniqlangan bo'lsa, DOMda shu identifikatorga ega element aniq mavjudligini bilsak ham (chunki biz o'z ramkamizni shunday yaratganmiz), TypeScript shuni biladiki, docu ment.getElementById ga qo'ng'iroq qilish HTMLElement | null . Biz bilamizki, u har doim null bo'lmagan HTMLElement bo'ladi , lekin TypeScript buni bilmaydi — u faqat biz bergan turlar haqida biladi.
Shunga o'xshab, dialog oynasi aniq DOMda ekanligini va uning asosiy DOM tuguniga ega ekanligini bilsak ham, TypeScript hamma narsani biladi: element.parentNode turi Node | null .
if (_ === null) tekshiruvlarini qo'shishdir . Agar biror narsa null yoki yo'qligiga ishonchingiz komil bo'lmasa, buni qilishning to'g'ri usuli bo'lsa-da, TypeScript null emasligiga ishonchingiz komil bo'lganingizda maxsus sintaksis bilan birga keladi | aniqlanmagan :

Download 1.81 Mb.

Do'stlaringiz bilan baham:
1   ...   117   118   119   120   121   122   123   124   ...   206




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling