@choupa
Архитектор (обычный, который строит)

Почему не работает наследование методов?

Делаю:

function Figure()  {
   THREE.Group.call( this );
   this.add( ... );      //  TypeError: this.add is not a function
   ...
}


где Group — класс со многими свойствами и методами (в т.ч. есть метод add() ). Смотрю в отладчике на this: свойства от Group в наличие, а вот методов — ни одного. При этом наблюдаю, что _proto_: Object вместо Group.

Что не так?
  • Вопрос задан
  • 120 просмотров
Решения вопроса 1
sfi0zy
@sfi0zy Куратор тега JavaScript
Creative frontend developer
function Figure() {
    THREE.Group.call(this);
    this.add('TEST');
}

Figure.prototype = Object.create(THREE.Group.prototype); // <-- вы забыли вот это

let f = new Figure();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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