visual studio - Hvordan kan jeg referere til TypeScript-filer uten absolutte stier?


Siden TypeScript ikke ser ut til å støtte absolutte stive referanser, ser jeg ikke hvordan jeg kan holde referansene mine ryddige. Jeg har ts-filer på mange forskjellige steder i mappestrukturen min, og det å måtte være veldig forsiktig med om jeg mener ..\Scripts\typings\jquery\jquery.d.ts eller ..\..\Scripts\typings\jquery\jquery.d.ts virker veldig tungvint.

Finnes det noen måte å spesifisere en rotreferansemappe på, slik at jeg ikke trenger å spesifisere alle stier i forhold til den nåværende filstien, som er forskjellig for hver mappe?

Svar #1

Det finnes for øyeblikket ingen måte å spesifisere en rot-mappe som skal brukes i referanser.

Absolutte filbaner fungerer, men vedlikehold av banene generelt med flere utviklere gjør dette sannsynligvis til et ikke-starter for mange TypeScript-utviklingsprosjekter.

Det har vært diskusjoner på CodePlex for eksempel som uttrykte en lignende forespørsel (men uten en løsning). Siden TypeScript-filer er frittstående, har noen vært bekymret for å introdusere en «prosjekt»-lignende ordning til kompilatoren.

Noen utviklere legger de mest brukte referansene i én enkelt fil (for eksempel kalt _references.d.ts) og lister referanser til definisjonsfilene der. Deretter vil den filen bli referert fra andre TypeScript-filer. Det forenkler, men eliminerer ikke helt problemet (da du fortsatt må bruke relative filreferanser med potensielt N nivåer med katalognavigering):

/// <references path="../../../_references.d.ts." />

Avhengig av hvor mange filer du har og størrelsen på definisjonene, kan du finne at når filer kompilieres individuelt, vil kompilasjonsprosessen ta lengre tid (da den trekker inn potensielt ubrukte definisjoner fra _references.d.ts-filen). (Hvis du for eksempel har «kompiler ved lagring» aktivert i et IDE).

Relaterte artikler