Jak byste použili strojopisem zlepšit typu dopředu a psát kontrolu JQueryUI volání funkcí

hlasů
1

Při práci s jQuery UI widgetu, často skončit s něčím, který následuje tento vzor:

$ ( # SomeId) someWidget ( volba, someOption, hodnota).

Je tam dobrý způsob, jak modelovat tuto interakci získat některé užitečné typ kontroly ze strojopisu? Technicky pravděpodobně máte metody definované takto:

someWidget (optionLiteral: řetězec, název_možnosti: řetězec, optionValue: všechna): JQuery;

(Po vzoru uvedených definic druhu jQuery UI)

Takže volba hodnota je v podstatě „jakýkoli“ bez ohledu na jméno volby. Existuje způsob, jak dále zatěžovat definici typu a možná udělat nějakou vzorů na název_možnosti? Nebo existují nějaké plány na to?

Položena 01/10/2012 v 20:38
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
3

Možná budete chtít kopat do například jQuery UI,

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

která pokrývá jak rozšířit typ rozhraní jQuery s dalšími metodami.

Typ jQuery je typ rozhraní a typy rozhraní jsou otevřeny na stroji, což znamená, že pozdější kompilace jednotky mohou přidávat členy typu. Váš příklad by být zapsán jako:

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

Pokud jde o přetížení metody může přetížit typu, ale ne hodnotu. Přetížení na hodnotách by dobrý návrh na webu CodePlex.

Odpovězeno 01/10/2012 v 21:21
zdroj uživatelem

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