Bonjour,

Je début sur le Front notamment sur le framework Angular
J'ai un composant que j'utilise plusieurs fois dans mon application -> WorkFormComponent
C'est un formulaire avec un bouton "Annuler" et "Ajouter".

Je souhaite ouvrir ce formulaire dans un boite modale.
j'ai fait plusieurs essai mais je n'arrive pas à récupéré la donnée de mon mon formulaire

work-dialog.component.html
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
<app-work-form
        [isEditForm]="isWorkEditForm"
        [selectedWork]="selectedWork"
        (addWork)="addWork($event)"
        (doClose)="onCancel()">
</app-work-form>
work.dialog.component.ts
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
@Component({
  selector: 'app-work-dialog',
  templateUrl: './work-dialog.component.html',
  styleUrls: ['./work-dialog.component.scss'],
})
export class WorkDialogComponent {
 
  readonly dialogRef = inject(MatDialogRef<WorkDialogComponent>);
  readonly data = inject<EeWork>(MAT_DIALOG_DATA);
  readonly work = model(this.data);
 
  isWorkEditForm : boolean = false;
  selectedWork : EditableEeWork = new EditableEeWork();
 
  constructor() {}
 
  addWork(eeWork: EeWork) {
    console.log('entreprise ajoutée : ', eeWork);
    this.dialogRef.close(eeWork);
  }
  onCancel() {
    this.dialogRef.close();
  }
 
  @HostListener('document:keyup.escape') onClose() {
    this.onCancel();
  }
 
}
méthode pour ouvrir la dialog et récupérer le resultat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
    openAddForm() {
        const dialogRef = this.dialog.open(WorkDialogComponent, {
            data: this.selectedWork,
        });
        dialogRef.afterClosed().subscribe(result => {
            console.log('The dialog was closed', result);
            if (result !== undefined) {
                console.log('EE = ');
            }
 
        });
    }
J'ai bien la trace de la fermeture de dialog mais le résultat est undefined

Pouvez-vous m'aider s'il vous plait ?
D'avance merci