Проблема при создании службы оболочки для PrimeNG MessageService (Angular 8) - PullRequest
0 голосов
/ 27 марта 2020

Я создал сервис-оболочку для MessageService из PrimeNG вместо вызова метода add() непосредственно в приложении, но он не работает и не выдает никакой ошибки времени компиляции / выполнения. Выполнение кода проверяется отладчиком. Он работает, когда я звоню напрямую и использую MessageService.

Есть ли что-то вроде MessageService, которое нужно вставить в компонент, чтобы иметь возможность взаимодействовать с его тегом html, который находится в app.component.html?

Пожалуйста, обратитесь к сервисному коду обертки ниже:

import { Injectable } from '@angular/core';
import { MessageService } from 'primeng/api';

@Injectable({
  providedIn: 'root'
})
export class ToastService {

  constructor(public messageService: MessageService) { }

  success(message: string) {
    this.messageService.add({ severity: 'success', detail: message });
  }

  error(message: string) {
    this.messageService.add({ severity: 'error', detail: message });
  }
}

Приветствия!

1 Ответ

0 голосов
/ 27 марта 2020

DId вы пытались использовать NgZone

import { NgZone } from '@angular/core';

constructor(private ngZone: NgZone)
this.ngZone.run(() => {
      success(message: string) {
       this.messageService.add({ severity: 'success', detail: message });
    }
});
...