ngx-clipboard не копирует в буфер обмена вместо метода обратного вызова

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

callServiceToCopy() {
let stringData = '';
let thingName: string = this.route.snapshot.params['thingName'];
let curDevice = this.devicesService
                    .get(thingName)
                    .subscribe((data) => {
                      this.device = data;
                      stringData = JSON.stringify(data);
                      console.log(stringData);
                      this.copy(stringData);
                      console.log("Copy Complete");
  });
}

onCopyFailure() {
    alert('Failed to copy to clipboard user ');
}

copy(text) {
  console.log(text + ' sent to copy');
  this._clipboardService.copyFromContent(text);
}

Если у меня есть __clipboardService вне обратного вызова, он может копировать текст в буфер обмена. Однако, если он у меня есть в обратном вызове, его нет (и, следовательно, нет данных устройства). Я следил за информацией Plunker, чтобы запустить его, и посмотрел на следующий вопрос для руководства, но это немного показывает мои потребности.

статья StackOverflow


person RWHertenstein2    schedule 12.11.2018    source источник


Ответы (1)


Взгляните на этот вопрос, как я думаю. может помочь. По сути, я думаю, вам нужно привязать this к вашему методу обратного вызова и передать его в метод subscribe.

person ViqMontana    schedule 12.11.2018