-
Data: 2019-09-04 22:11:10
Temat: TypeScript - jak uzyskać zmienne prywatne? Gdzie korzyści z TS?
Od: Marek S <p...@s...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam,
Biję się z myślami czy nie przesiąść się z JS ES6 na TypeScript. Właśnie
testuję pod PHPStorm'em edycję i transkompilację TS i działa ten
mechanizm wyśmienicie. Ucieszony tym zabrałem się za pierwszy skrypt i
... poległem na podstawach. Stworzyłem dwie klasy jako moduły) Test i Test2:
abstract class Test {
private _message: string;
protected printMessage() {
console.log(this._message);
}
protected constructor(message: string) {
this._message = message;
}
}
export default Test;
*****************************************
import Test from "./Test";
class Test2 extends Test{
private _message: string;
constructor(message:string) {
super("dupa");
this._message = message;
}
execute() {
console.log(this._message);
this.printMessage();
}
}
let demo = new Test2("my message");
demo.execute();
Zadeklarowałem _message jako zmienną prywatną w obu klasach i... powstał
konflikt! Transkompilator nie poradził sobie z tym. Oczekiwałbym
samoczynnej zmiany nazwy funkcji by w wyjściowym JS nie było konfliktów.
Zatem jak żyć? :-) To samo dotyczy metod. Te prywatne zwalczają się
zamiast być niezależnymi w każdej z klas.
Póki co nie dostrzegam wielkich korzyści z przejścia na TS. Aby uzyskać
wpełni prywatne zmienne, muszę ręcznie rzeźbić kod na symbolach - jak w
natywnym JS. Jedynie IDE nieco ułatwi programowanie ukrywając to, co
prywatne i czasem przypilnuje typów (ale tylko przy jawnych
podstawieniach). Czy zatem warto bawić się w TS?
--
Pozdrawiam,
Marek
Następne wpisy z tego wątku
- 05.09.19 05:54 Szyk Cech
- 05.09.19 09:50 Roman Tyczka
- 05.09.19 19:43 Marek S
- 05.09.19 19:58 Marek S
- 05.09.19 20:21 Marek S
- 06.09.19 13:55 Tomek
- 06.09.19 14:57 Marek S
- 07.09.19 16:12 Roman Tyczka
- 08.09.19 00:07 Marek S
Najnowsze wątki z tej grupy
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
- Czy istnieje jakiś emulator przeglądarek pod Mac'a?
- taka sama konfiguracja dla localhost i produkcji
Najnowsze wątki
- 2024-11-21 Re: Dla mr. J.F`a, Trybuna i Wiesiaczka którzy "troszczą" się o państwowe i u których 0 pragmatyzmu
- 2024-11-21 Re: Dla mr. J.F`a, Trybuna i Wiesiaczka którzy "troszczą" się o państwowe i u których 0 pragmatyzmu
- 2024-11-21 Re: Dla mr. J.F`a, Trybuna i Wiesiaczka którzy "troszczą" się o państwowe i u których 0 pragmatyzmu
- 2024-11-20 "betamaxy" i inne voip-y dzisiaj
- 2024-11-21 Strach się bać
- 2024-11-21 Koniec smrodów
- 2024-11-20 Krematorium
- 2024-11-20 Taki tam szkolny problem...
- 2024-11-20 LIR2032 a ML2032
- 2024-11-20 SmartWatch Multimetr bezprzewodowy
- 2024-11-21 Środa Wielkopolska => Konsultant SAP <=
- 2024-11-21 Łódź => Spedytor Międzynarodowy <=
- 2024-11-21 Wrocław => Inżynier bezpieczeństwa aplikacji <=
- 2024-11-21 Kraków => Lead Java EE Developer <=
- 2024-11-21 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=