W jaki sposób można użyć maszynopis do poprawy typu światło i wpisz sprawdzanie jQueryUI wywołań funkcji

głosy
1

Podczas pracy z jQuery UI widget, często kończy się z czegoś, co następuje tego wzorca:

$ ( # SomeId) someWidget ( opcja, someOption, wartość).;

Czy jest to dobry sposób na model interakcji trochę przydatnych typ wymeldowywania maszynopis? Technicznie zapewne masz metodę zdefiniowaną następująco:

someWidget (optionLiteral: ciąg Nazwa_opcji: ciąg Wartość_opcji: każdy) JQuery;

(Wzorowany na określonych definicji typu jQuery UI)

Więc wartość opcji jest w zasadzie „any” bez względu na to nazwa opcji. Czy istnieje sposób na przeciążenie definicji typu dalej i może zrobić jakiś wzór pasujący na Nazwa_opcji? Czy są jakieś plany na to?

Utwórz 01/10/2012 o 20:38
źródło użytkownik
W innych językach...                            


1 odpowiedzi

głosy
3

Może chcesz kopać na przykład jQuery UI,

http://www.typescriptlang.org/Samples/#Warship

która obejmuje, jak rozszerzyć typ interfejsu jQuery z dodatkowymi metodami.

Typ jQuery to typ interfejsu i typy interfejsów są otwarte w maszynopisie, co oznacza, że ​​późniejsze jednostki kompilacji można dodać członków do typu. Twój Przykładem może być napisane jak,

interface JQuery {
    someWidget(optionLiteral: string, optionName: string, optionValue: any): JQuery
}

Jak na przeciążenia, metody mogą być przeciążone od typu, ale nie wartości. Przeciążenie na wartościach stałaby dobra propozycja na stronie CodePlex.

Odpowiedział 01/10/2012 o 21:21
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more