У меня есть Base
класс какES6 расширить уже определен класс
class Base {
constructor() {
console.log('should get called')
}
}
и Target
класс как
class Target {
someFn() {
// does something
}
}
Я хочу сделать Target
продлить Base
после его определить. Я имею в виду, я знаю, что я мог бы просто сделать следующее
class Target extends Base { ... }
Однако, я все еще хочу, чтобы иметь возможность расширить Target
с Base
после его определены.
Я пробовал несколько способов, но не вполне доволен этим. Это возможно?
Я мог бы сделать class Base extends Target {}
, но тогда его уже не такой класс.
Моя основная цель; Я хочу добавить constructor
в класс (который, как я знаю, я не могу), поэтому выясню некоторые способы.
Зачем вам это нужно? – zerkms
Lol, хороший вопрос ... Я не знаю, на самом деле ...: P Хорошо, я объясню, я хочу определить множество классов с помощью некоторых методов, каждый из которых возвращает результат некоторых вычислений. Данные (по которым эти формулы будут работать) будут переданы в конструкторе (где я хочу его предварительно обработать) ... Поэтому я хочу, чтобы классы классов были чистыми только с помощью методов формулы и делали все остальное в моем декораторе функции или базового класса ... Имеет смысл? –
Ваш комментарий не объясняет, почему вы хотите динамически менять прототип. Это даже не объясняет, почему вам нужно наследование. – zeroflagL