angular / angular/components

(Dialog) Component-less alert and confirm dialogs

Aperta
#17,048 5 commenti 21 reazioni 0 assegnatari Vedi su GitHub
area: material/dialog feature needs: discussion P5
Lingua principale
TypeScript
Stelle
25k
Fork
6.8k
Merge medio
1g 8h
PR unite (30g)
91

Descrizione

#### Feature Description

My proposal is to create one or two methods on the `MatDialog` provider/controller to allow component-less alert and confirm dialogs, for example:

// Alert dialog
this.dialog.alert({
title: 'Forbidden',
message: 'The resource you are trying to access is forbidden.',
okButton: 'OK'
})

// Confirm dialog
this.dialog.confirm({
title: 'Server error',
message: 'The server is currently in maintenance.',
confirmButton: 'Retry',
cancelButton: 'Cancel'
})

Alternatively, both `alert` and `confirm` could be on a single method:

this.dialog.alert({
title: 'The title',
message: 'The message',
confirmButton: 'OK', // Optional, only for confirm
dismissButton: 'Dismiss'
}).afterClose().subscribe((result: boolean) => console.log); // True if confirm, false if dismiss.

#### Use Case

Currently, we have to create a component for every dialog, event the simplest dialog. This is painful and useless in most cases. Other alternatives (what I do) is to create a `AlertService` that does it for me. But makes no sense maintain it if it could be a simple feature of `MatDialog`

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia esaminando il MatDialog provider/controller esistente e l’attuale flusso di dialog basato su componenti. Confronta le API alert e confirm proposte, comprese le etichette dei pulsanti e il risultato booleano di chiusura. Il lavoro è completato quando il comportamento component-less e la scelta dell’API sono definiti e implementati per entrambi gli esiti del dialog.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
angular, typescript
Ambito
frontend
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.