• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[TYPESCRIPT] Klasy, dziedziczenie i problem z super();

VPS Starter Arubacloud
0 głosów
476 wizyt
pytanie zadane 29 września 2019 w JavaScript przez antypop Mądrala (5,730 p.)
zmienione kategorie 29 września 2019 przez ScriptyChris

Hej, mam problem ale nie wiem jak zadać pytanie w google żeby znaleźć na nie odpowiedź. Na forum przeczytałem wszystkie posty dotyczące TS i również nie znalazłem odpowiedz. Ktoś mógłby mi wyjaśnić dlaczego super() w konstruktorze klasy nie działa poprawnie (zwraca błąd : Cannot find name 'gender'. Did you mean the instance member 'this.gender'?). Poniżej kod:

abstract class Human {

    abstract hello : () => string;

}

class Man extends Human {
    public name : string;
    public gender : string;

    constructor(a : string, b : string) {
        super();
        this.name = a;
        this.gender = b;
    }

    public hello = () : string => {
        return `${this.name} ${this.gender}`;
    }
}

class Woman extends Man {

    constructor(a : string, b : string, c : string) {
        super(name,gender) // w tym miejscu VSC podkreśla mi zmienną gender i informuje że nie potrafi jej znaleźć mimo że znajduje się w konstruktorze rodzica.

    }
}

Podejrzewam że to jakieś niedopatrzenie z mojej strony ale zablokowałem się po godzinie wgapiania się w to i potrzebuje "świeżego spojrzenia". Będę wdzięczny za pomoc :)

1 odpowiedź

+1 głos
odpowiedź 29 września 2019 przez niezalogowany
wybrane 29 września 2019 przez ScriptyChris
 
Najlepsza
W kontruktorze klasy Woman konstruktor przyjmuje zmienne a, b, c i je musisz przekazać do klasy Man a nie name i gender bo nie masz tych zmiennych w konstruktorze.
komentarz 29 września 2019 przez antypop Mądrala (5,730 p.)
No i wszystko jasne, dzięki :)

 

Temat do zamknięcia/usunięcia.

 

Pozdrawiam

Podobne pytania

0 głosów
1 odpowiedź 397 wizyt
pytanie zadane 13 kwietnia 2017 w JavaScript przez Alex.Ironside Stary wyjadacz (14,880 p.)
0 głosów
0 odpowiedzi 94 wizyt
pytanie zadane 18 kwietnia 2017 w JavaScript przez Alex.Ironside Stary wyjadacz (14,880 p.)
+2 głosów
2 odpowiedzi 318 wizyt
pytanie zadane 16 marca 2019 w JavaScript przez rafal.budzis Szeryf (85,260 p.)

92,452 zapytań

141,261 odpowiedzi

319,074 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...