2014-10-20 34 views
6

Jak umieścić stałą w interfejsie w maszynie do pisania. Podobnie jak w języku Java:Maszynopis: stałe w interfejsie

interface OlympicMedal { 
    static final String GOLD = "Gold"; 
    static final String SILVER = "Silver"; 
    static final String BRONZE = "Bronze"; 
} 

Odpowiedz

17

Nie można zadeklarować wartości w interfejsie.

Można zadeklarować wartości w module:

module OlympicMedal { 
    export var GOLD = "Gold"; 
    export var SILVER = "Silver"; 
} 

W kolejnej wersji maszynopisu, będziesz mógł korzystać const:

module OlympicMedal { 
    export const GOLD = "Gold"; 
    export const SILVER = "Silver"; 
} 

OlympicMedal.GOLD = 'Bronze'; // Error 
+1

Możesz teraz użyć 'TSC --target ES6 'aby skompilować poniższy skrypt. –

+0

Niestety to się zepsuje, jeśli OlympicMedial jest już zdefiniowany jako interfejs :(czy możesz dodać consts do interfejsów? – Spongman