Определение сладкого оповещения в сервисе и Inject

Использование сладкого оповещения для предупреждающих сообщений в angularJS2/typescript. Поскольку этот код используется в нескольких местах приложения, этот код повторяется во многих местах.

создал сервис

@Injectable()
export class AlertMessageService {



    constructor(private http: Http) {

     }

   public deleteMessage(){
    return swal({
      title: 'Are you sure?',
      text: "Delete the selected record(s)?",
      type: 'warning',
      showCancelButton: true,
      confirmButtonColor: '#66c378',
      cancelButtonColor: '#d33',
      confirmButtonText: 'Yes'
    })
    }

попробуйте использовать это в компоненте, как этот, который не работает.

  this.alertMessageService.deleteMessage.then(() => {
      if (ind !== -1 && ind != undefined) {
        this.attachments.splice(ind, 1);
      }
      /* let headers = new Headers();
        this.http.delete(AppUtils.INCIDENT_ATTACHMENT_URI+"/? path" + "=" + item.filePath,  {})
              .map(response => response.json().result)
              .catch(this.handleError);*/
    });
  }

Есть ли способ, как мы определяем его при обслуживании различных типов оповещений и внедряем его? Как?

0 ответов

Sweetalert .service.ts

import { Injectable } from '@angular/core';
import swal from 'sweetalert2';
@Injectable()
export class SweetAlertService {
constructor() { }
public warningAlert(textLine, isShowCancel?) {
return swal({
  title: textLine || 'Are you sure?',
  type: 'warning',
  showCancelButton: isShowCancel,
  cancelButtonText: 'No',
  confirmButtonText: isShowCancel ? 'Yes' : 'Ok',
  reverseButtons: true,
  allowOutsideClick: false
});
}
}

В component.ts

constructor(public sweetAlertService: SweetAlertService){}
const popupResponse =  this.sweetAlertService.warningAlert('Your meassage', true);

   if (popupResponse.value) {
   // press Yes on popup
    }
   else{// press cancel on popup}

В module.ts

import providers: [SweetAlertService ]

Другие вопросы по тегам