2012-10-12 15 views
27

Tak już zdefiniowane moje „enum” w górnej części mojego pliku javascript jako tak:Uzyskaj VS javascript intellisense dla JS w innym pliku

var loaderOptions = { "SHOW": 0, 
    "CHANGEPAGE": 1, 
    "HIDE": 2 
}; 

chciałem tego wyliczenia mają być wykorzystywane w funkcji użyteczności używane później (showLoader (milisekundy, elementOrPageID, opcja, textMessage, callbackFunc) {}).

To wszystko działa bajecznie jak mam intellisense gdy zgłoszę enum/zmienna enter image description here

JEDNAK Chciałbym przenieść funkcję i jej enum z mojego głównego pliku do pliku narzędzie ... I czy to działa dobrze, ale tracę intellisense ... wszelkie sztuczki, aby móc zachować tę zdolność?

Odpowiedz

57

Dodaj dyrektywę referencyjne na wierzchu pliku JavaScript

/// <reference path="file1.js" /> 

MSDN Doc

+9

ERMAHGERD !!! Właśnie dlatego uwielbiam Stack! Dziękuję Ci! DOKŁADNIE to, czego szukałem! –

+0

/// <ścieżka referencyjna = "angular.js" /> – maxwellb

+0

/// <ścieżka referencyjna = "~/assets/js/userData.js" /> działa, jeśli znajduje się w innej lokalizacji folderu –

11

Mads Kristensen's blog post plik _references.js przedstawia nowszą sposób obsługi to niż jednego epascarello wspomina w his answer. Oto cytat z postu Madsa:

Wprowadź _references.js.

Ten plik musi (domyślnie) znajdować się w folderze w katalogu głównym o nazwie/scripts /. To konwencja nazewnictwa. Każdy plik znajdujący się w /scripts/_references.js jest automatycznie dodawany do globalnego IntelliSense. Jest to teraz jedyny plik, którego potrzebujemy do referencji potrójnych cięć. Oto co zawartość tego pliku może wyglądać następująco:

/// <reference path="modernizr-2.6.2.js" /> 
/// <reference path="jquery-1.10.2.js" /> 
/// <reference path="bootstrap.js" /> 
/// <reference path="respond.js" /> 

tylko kilka odniesień. Jest to również jedyny plik domyślnie uwzględniony w IntelliSense.

Powiązane problemy