angular - Vad är typings i typescript?
Jag försöker lära mig Angular 2 med TypeScript och vill veta varför och hur denna typings-fil skapas och används?
I min projektmapp har jag en mapp som heter typings som är genererad och en fil som heter index.d.ts. Jag har gått igenom dokumentationen för TypeScript och kan inte tycka att jag förstår varför den behövs?
Svar #1
Typningar beskriver kontraktet för de bibliotek du använder. Detta möjliggör för TypeScript-kompilatorn att veta att det du använder existerar (klasser, egenskaper, ...).
Du kan installera typings från ett repository med kommandot typings eller låta kompilatorn ta reda på dem genom att använda den strategi som anges i tsconfig.json-filen med attributet moduleResolution.
För Angular2 löses de (.d.ts-filer) inom node_modules/@angular-mappen eftersom ramverket innehåller sina typdefinitioner. För andra bibliotek, som Lodash, är det inte fallet. Så du måste installera dem från repot.
För att definiera en typings-fil kan du utnyttja export declare class-klausulen:
export declare class SomeClass {
name: String;
constructor(name?: String);
}
Svar #2
Mappen typings och index.d.ts hanteras av en typdefinitionspakethanterare som kallas typings eller möjligen dess föregångare tsd.
För tredjepartsbibliotek som inte levereras med egna typdefinitioner används typningspakethanteraren för att installera dessa typdefinitioner i ditt projekt.
