Почему мой MatTableDataSource выдвигает более одного объекта? - PullRequest
0 голосов
/ 27 марта 2019

У меня 2 подписки в моем ngOnInit ().

Здесь я могу добавить «Транзакцию» в пул транзакций. При нажатии кнопки «Отправить» активируется подписка transaction$ и добавляется транзакция в пул. Всегда следует добавлять только ОДНУ транзакцию.

enter image description here

Вот так выглядит бассейн в первый раз:

enter image description here

Это то, что дают мне console.logs: так должно быть всегда. После отправки транзакции в каждом из 10 пулов все они должны содержать 1 объект.

enter image description here

После нажатия на одну кнопку номер победителя становится подписанным. Пул от победителя должен быть скопирован в остальные пулы. А что происходит сейчас, когда я добавляю транзакцию в пул:

Транзакция передается в каждый из 10 пулов. Но вместо того, чтобы толкать 1 раз, в каждом пуле толкают 10 раз.

enter image description here

Вот что показывают console.logs:

enter image description here

this.emitTransactionService.transaction$.subscribe(transaction => {
        if (transaction !== false) {
          for (let i = 1; i < 11; ++i) {
            console.log(this.transactionPools[i].dataSource.data);
            this.transactionPools[i].dataSource.data.push(transaction);
            console.log(this.transactionPools[i].dataSource.data);
          }
          console.log('Hallo');
          this.sendMessage5();
        }
      }
    );
    this.emitTransactionService.winningMiner$.subscribe(winningMiner => {
      if (winningMiner !== false) {
        for (let i = 1; i < 11; ++i) {
          this.transactionPools[i].dataSource = this.transactionPools[winningMiner].dataSource;
        }
      }
    });

Я пробовал несколько вещей, но ни одна из них не работала. Я пытался создать новый MatTableDataSource после каждого нажатия кнопки, но это не сработало. А также проблема появилась, когда я добавил winningMiner$ подписку

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