ES6: Может ли геттер наследовать от родителя, если ребенок переопределяет сеттер? [Дубликат]

Если во время проверки не появляется ошибка MySQL, убедитесь, что вы правильно создали таблицу базы данных. Это случилось со мной. Ищите любые нежелательные запятые или цитаты.

12
задан Kirill Fuchs 25 December 2015 в 10:15
поделиться

1 ответ

class Y extends X {
  constructor(name) {
    super(name);
  }

  set name(name) {
    super.name = name;
    this._name += "Y";
  }
}

правильно заменит name с помощью аксессора для только сеттера, без геттера. Это означает, что ваш y.name === "hiXY" не сработает, потому что y.name вернет undefined, потому что для name нет геттера. Вам нужно:

class Y extends X {
  constructor(name) {
    super(name);
  }

  get name(){
    return super.name;
  }

  set name(name) {
    super.name = name;
    this._name += "Y";
  }
}
17
ответ дан loganfsmyth 27 August 2018 в 06:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: