2015-12-28 11 views
6

starałem się zastosować @Reflect.metadata dekorator do klasy maszynopis, wzorując się na liniach 82-84 z reflect-metadata.d.ts:@ Reflect.metadata generuje błędu TS1238: Nie można rozwiązać podpis klasy dekoratora, gdy nazywa się wyrazem

/// <reference path="node_modules/reflect-metadata/reflect-metadata.d.ts"/> 

@Reflect.metadata('key', 0) 
class C { 
} 

jednak maszynopis 1.7.2 kompilator generuje następujący błąd na linii @Reflect.metadata:

błąd TS1238: Nie można rozwiązać podpis klasy dekoratora, gdy nazywa się wyrazem.
Nie można wywołać wyrażenia, którego typ nie ma podpisu połączenia.

Co jest nie tak?

Odpowiedz

0

Z maszynopis docs:

Dekoratorzy są sprawdzane jako wyrażeń połączeń

zaczynające 1,6, dekoratorzy typ jest bardziej dokładne sprawdzanie; kompilator sprawdzi wyrażenie dekoratora jako wyrażenie wywołania z dekorowanym elementem jako parametrem. Może to spowodować zgłoszenie błędu, którego nie ma w poprzednich wersjach.

Domyślam się, że prawdopodobnie trzeba użyć nowszą wersję maszynopisu lub starszą wersję reflect-metadata.

Najnowsze wersje to:

Powiązane problemy