165 votes

Désactiver le clic en dehors de la zone de dialogue de matériel angulaire pour fermer la boîte de dialogue (avec Angular Version 4.0+)

Je travaille actuellement sur la page de réinitialisation du mot de passe d'un projet Angular 4. Nous utilisons Angular Material pour créer la boîte de dialogue, cependant, lorsque le client clique en dehors de la boîte de dialogue, elle se ferme automatiquement. Existe-t-il un moyen d'éviter la fermeture de la boîte de dialogue jusqu'à ce que notre code appelle la fonction "fermer"? Ou comment devrais-je créer une boîte de dialogue non fermable?

-2voto

DForsyth Points 45

Je sais que c'est vieux de quelques années, mais ne pouvez-vous pas utiliser backdrop: 'static' pour désactiver le clic à l'extérieur et keyboard: false pour désactiver l'échappement ?

Docs faire défiler un peu jusqu'à la section modale. Je suis assez sûr que c'est bon pour Angular 4+.

Exemple bidon :

import { BsModalRef, BsModalService } from "ngx-bootstrap/modal";

@Component({
  // Configuration...
})

export class ModalExample {
  modalRef: BsModalRef;

  constructor(
    private modalService: BsModalService, 
  ) { }

  ngOnInit(): void {

  }

  public openConfirmationModal(submitClaimResult: SubmitDealerClaimResult) {
    this.modalRef = this.modalService.show({backdrop: 'static', keyboard: false });
  }

}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X