typescript - "hitta alla referenser" fungerar inte om inte beroendefiler är öppna


Jag arbetar med VS 2012/TypeScript 0.9. När jag försöker använda funktionen "hitta alla referenser" från en TypeScript-fil hittas inga referenser om inte de beroende filerna är öppna. Till exempel, ta följande scenario:

1) i filen file1.ts har jag en klass som heter class1 2) i filen file2.ts har jag en klass som heter class2 som använder class1

om jag i file1.ts högerklickar på class1 och väljer "hitta alla referenser", hittas inga referenser i file2.ts, UNLESS file2.ts är öppen.

Jag undrade om detta är en bugg eller något på min sida som orsakar problemet.

tack

Svar #1

Detta är för närvarande avsiktligt. I de flesta projekt har man vanligtvis en "core"-typ av fil som refererar direkt eller indirekt till de andra TypeScript-filerna i projektet. Jag brukar hålla min "core"-fil öppen så att alla funktioner för att hitta alla referenser och alla andra verktygsdelar fungerar.

Så en sak att notera (antydde detta ovan) är att du bara behöver ha en fil öppen som indirekt refererar till de filer du vill ha "kontrollerade".

Alltså om du har:

A.ts

// Stuff

B.ts

/// <reference path="A.ts" />

C.ts

/// <reference path="B.ts" />

I C.ts kommer du att kunna hitta definitioner i A.ts eftersom B.ts refererar till A.ts.

Svar #2

Ytterligare information till N. Taylor Mullens svar (eftersom jag ännu inte kan kommentera):

Funktionen "hitta alla referenser" behöver inte någon annan fil öppen förutom den aktuella filen om den aktuella filen innehåller en direkt eller indirekt referens till alla andra filer. Min filstruktur ser ut så här:

A.ts

/// <reference path="References.ts" />

B.ts

/// <reference path="References.ts" />

C.ts

/// <reference path="References.ts" />

Referenser.ts

/// <reference path="jquery.d.ts" />
/// <reference path="A.ts" />
/// <reference path="B.ts" />
/// <reference path="C.ts" />

Jag lade till jquery.d.ts i detta exempel för att visa att verkligen alla nödvändiga moduler eller deras definitionsfiler är refererade i References.ts.
Min References.ts innehåller ungefär 25 referenser, men varje annan fil har bara en referens till References.ts-filen.