В Angular, Как вызвать виртуальный метод из класса, чем наследует внутри родительского класса?

У меня есть два компонента, которые наследуют один базовый класс:

  1. Класс ChildA расширяет базу
  2. Класс ChildB расширяет базу

Чтобы факторизовать какой-то метод, я хотел бы вызвать foo() из Childs в OnChanges() из Base следующим образом:

export abstract class Base implements OnChanges{
    ngOnChanges(changes: SimpleChanges) {
        this.foo();
    }
    foo(): void{
       throw("Error, it shouldn't be instantiated. Override this method.");
    }
}

export class ChildA extends Base{
    ...
    foo(): void{
         alert("This is the correct method which has to be called !");
    }
}

Результат:

Ошибка, это не должно быть создано. Переопределите этот метод.

Не:

Это правильный метод, который нужно вызывать!

У кого-то есть идея?

0 ответов

Другие вопросы по тегам