2016-06-29 76 views
5

Sto provando ad accedere ai metodi di una classe in modo dinamico, utilizzando il valore di una variabile precedentemente impostata in TypeScript.Metodi di accesso dinamici della classe TypeScript

Qualcosa di simile a questo:

class Foo { 
    bar(){ } 
} 

var methodName = "bar"; 
var fooBar = new Foo(); 

fooBar.methodName(); // I would like this to resolve to fooBar.bar(); 

Per esempio in PHP posso effettuare le seguenti operazioni:

class Foo { 
    public function bar(){ } 
} 

$methodName = "bar"; 
$fooBar = new Foo(); 

$fooBar.$methodName(); // resolves to fooBar.bar(); 

Qualcuno sa se questo è possibile, e se è, come farlo ? So che un po 'in contraddizione con l'idea di un linguaggio tipizzato, ma la sua l'unica soluzione al mio problema attuale

risposta

7

Abbiamo semplicemente lasciare fortemente tipizzato (e controllati) mondo, e utilizzare solo uno stile JavaScript (che è ancora utile, ad esempio in questi casi)

fooBar[methodName]();