В Node / raw ES6, как я могу генерировать событие из родительского класса и запускать событие в дочернем классе из их соответствующих конструкторов? - PullRequest
0 голосов
/ 08 октября 2018

В настоящее время я работаю над упражнением "JS track - реакции проекта" (нет, не реагирует).Упражнение состоит в том, чтобы делать уроки, которые реагируют на действия друг друга.Я не был уверен, что наследование было лучшим выбором, но я чувствую, что оно настолько близко, насколько я собираюсь получить.(PS Это мой первый пост здесь, я пробовал довольно много мест, прежде чем решил задать свой первый вопрос здесь. ('PPS') => 'Howdy':)

`class InputCell extends EventEmitter {
  constructor(value) {
    super(value);
    this.value = value;
  }

  setValue(value) {
    this.value = value;

    // I'm assuming this emitter doesn't leave the scope of the object it creates?
    this.emit('cellChange');
  }
}

class ComputeCell extends InputCell {
  constructor(cells, compute) {
    super(cells, compute);
    this.value = compute(cells);

    // super wasn't my first choice, but 'this' didn't work either
    super.on('cellChange', () => compute(cells));
  }
}`

Edit- Мои извинения,вот неудачный тест, который я запускаю.

`  test('compute cells update value when inputs are changed', () => {
    const inputCell = new InputCell(1);

    const computeCell = new ComputeCell(
      [inputCell], inputs => inputs[0].value + 1
    );

    inputCell.setValue(3);

    expect(computeCell.value).toEqual(4);
  });

`

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...