Typescript: Methode kann statisch sein

9

typescript v 2.1.0

Ich habe den folgenden ServerRouter.ts geschrieben

%Vor%

Webstorm Inspektionswarnung

& gt; Methode kann statisch sein

wird über die Funktion getIndex () ausgelöst:

ABER

Wenn ich es in static geändert habe

  

public static getIndex ()

, das bekomme ich einen Fehler: TS2339 'getIndex' existiert nicht auf dem Typ 'ServerRouter'

Was soll ich ändern?

danke für das Feedback

    
erwin 27.03.2017, 16:44
quelle

1 Antwort

17

Eine statische Methode existiert für eine Klasse und nicht für eine Objektinstanz. Sie müssten this.getIndex in ServerRouter.getIndex in Ihrer Funktion init ändern.

WebStorm schlägt vor, Methoden statisch zu machen, wenn sie den Zustand einer Instanz nicht berühren, da sie andeuten, dass die Methode auf einer Ebene existiert, die allgemein für alle Instanzen dieser Klasse gilt / p>

Sie können mehr über static im TypeScript-Handbuch herausfinden (siehe "Statische Eigenschaften "Abschnitt).

    
Ben Elliott 27.03.2017 16:46
quelle

Tags und Links