eksport nom maydoni TCP {
listenOn ( port : raqam ) : Ulanish {
//...
} // ...
}
eksport nom maydoni UDP {
// ...
}
eksport nom maydoni IP {
// ...
}
}
Tarmoq ostidagi pastki nomlar bo'shliqlarida . Masalan, endi istalgan fayldan Network.HTTP.get va Network.TCP.listenOn ga qo'ng'iroq qilishimiz mumkin. Interfeyslar singari, nomlar bo'shliqlari ham kengaytirilishi mumkin, bu ularni fayllarga bo'lish uchun qulay qiladi. TypeScript biz uchun bir xil nomli fazolarni rekursiv ravishda birlashtiradi:
// HTTP.ts nom maydoni Tarmoq { eksport nom maydoni HTTP {
eksport funktsiyasi olish < T > ( url : string ) : Va'da < T > {
// ...
}
}
}
// UDP.ts nom maydoni Tarmoq { eksport nom maydoni UDP {
eksport funktsiyasi yuborish ( url : string , paketlar : bufer ) : Va'da < bekor > {
// ...
}
}
}
// MyApp.ts
Tarmoq . HTTP . olish < Dog [] > ( 'http://url.com/dogs' )
Tarmoq . UDP . yuborish ( 'http://url.com/cats' , yangi Bufer ( 123 ))
Agar siz uzun nomlar maydoni ierarxiyasiga ega bo'lsangiz, qulaylik uchun ularni qisqartirish uchun taxalluslardan foydalanishingiz mumkin. Shunga o'xshash sintaksisga qaramay, taxalluslar uchun tuzilmani buzish (ES2015 modullarini import qilishda bo'lgani kabi) qo'llab-quvvatlanmasligini unutmang:
// A.ts nom maydoni A { eksport nom maydoni B { eksport nom maydoni C { eksport ruxsat bering d = 3
}
}
}
// MyApp.ts importi d = A . B . C. _ d ruxsat bering e = d * 3
To'qnashuvlar
Bir xil nomdagi eksportlar o'rtasida to'qnashuvlarga yo'l qo'yilmaydi:
// HTTP.ts nom maydoni Tarmoq {
eksport funktsiyasi so'rov < T > ( url : string ) : T {
// ...
}
}
// HTTP2.ts nom maydoni Tarmoq {
// Xato TS2393: Funktsiyani takrorlash.
Do'stlaringiz bilan baham: |