2017-02-13 2 views
0

Also, ich habe eine Komponente, wo ich meine Ereignisliste haben, die wie folgt aussieht:Übergeben Sie ein Objekt auf einen Winkel Material2 Dialog

eventi.component.ts

@Component({ 
    selector: 'my-eventi', 
    templateUrl: './eventi.component.html', 
}) 
export class EventiComponent implements OnInit { 
    soonEvents: Eventi[]; 
    data: Date; 
    i: number; 

    evtdlg: EventDialog; 

    constructor(private eventiService: EventiService, public dialog: MdDialog) { } 

    ngOnInit() { 
     this.eventiService 
      .getFutureEvents() 
      .then((futureEvents: Eventi[]) => { 
       this.futureEvents = futureEvents.map((futureEvents) => { 
        return futureEvents; 
       }); 
      }); 
    } 

    openEventDialog(event: Eventi) { 
     this.dialog.closeAll(); 
     this.dialog.open(EventDialog); 
    } 
} 

Und seine html: eventi.component.html

<div class="col s8 m8 l5 offset-s2 offset-m2" *ngFor="let event of soonEvents"> 
    <a (click)="openEventDialog()"> <-- The dialog has to display this card's event 
     <md-card class="card"> 
      <img md-card-image src="../assets/icons/events/evento2801-min.jpeg"> 
      <md-card-content> 
      <span class="card-title grey-text-text-darken-4"> 
       {{event.nome}} 
       <a (click)="openEventDialog(event)"> 
        <button md-mini-fab class="light-blue accent-1 right white-text"> 
         <md-icon>add</md-icon> 
        </button> 
       </a> 
      </span> 
      <p class="left-align card-date">{{event.data | date:'dd/MM/yyyy'}}</p> 
      </md-card-content> 
     </md-card> 
    </a> 
</div> 

dialog component

@Component({ 
    selector: 'event-dialog', 
    template:` 
     <div class="info"> 
      <img class="dialog-evento" src="../assets/icons//events/evento2801.jpeg"> 
      <div class="floatr"> 
       <h3>{{event.nome}}</h3> 
       <p class="des-evento">{{event.data | date:'dd/MM/yyyy'}}</p> 
       <p class="des-evento">Dalle {{event.oraInizio}}<p> 
       <p class="des-evento">Presso {{event.luogo}}</p> 
      </div> 
     </div> 
     <div class="descrizione"> 
      <span> 
       {{event.descrizione}} 
      </span> 
     </div> 
    ` 
}) 
export class EventDialog { } 

Wenn ich meinen Dialog öffne, möchte ich die Eigenschaften des gleichen Ereignisses der Karte sehen, auf die ich geklickt habe. Gibt es eine Möglichkeit, dies zu tun?

+0

prüfen 'Schritt 8' hier http://stackoverflow.com/questions/34205593/working-example-of-angular-2-0-material-mddialog- mit-eckigen-2-0/40185852 # 40185852 – yurzui

+0

Das hat es geschafft, danke @ yurzui! –

+0

https://stackoverflow.com/questions/42664974/how-to-pass-data-to-dialog-ofangular-material-2 –

Antwort

Verwandte Themen