Защо проектите Typescript включват .d.ts дефиниции ... изглеждат продуктивни?
Ако библиотеката вече е разработена в TypeScript(подобно на Angular2 нека кажем), и TS транспилер може да използва източник .TS файлове за intellisence, защо продължавам да виждам в TS проекти.
Сега сте сигурни, че можете лесно да генерирате .d.ts дефиниция чрез tsd изпълним, но не мога да видя логиката.
за разбирането,
Шон
Отговори:
4 за отговор № 1Тя се свежда до разпространение. Свързването на проект чрез npm / bower осигурява "главен" файл, който е javascript, а не текстов. Като такава, най-логично е изходът на компилирането на проект от Typescript да бъде:
a) Файлът transpiled javascript, евентуално сгънат
б) .d.ts файл, описващ анотациите на типа (като заглавен файл в C)
Нямаше да има никакъв смисъл да се разпространява в машинопис, тъй като това или би попречило на JavaScript проектите да го използват, или би изисквало отделна версия на npm пакета.