Maison > interface Web > js tutoriel > le corps du texte

En savoir plus sur @Input() et @Output() en angulaire

青灯夜游
Libérer: 2021-02-01 11:47:55
avant
2898 Les gens l'ont consulté

En savoir plus sur @Input() et @Output() en angulaire

Recommandations de tutoriel associées : angularjs(tutoriel vidéo)

Créer une classe d'étudiant

Il n'y a que quelques attributs simples (exécutez les attributs suivants pour générer rapidement)
ng generate class entity/student

export class Student {
    id: number;
    name: string;
    age: number;
}
Copier après la connexion

Créer un composant enfant

ts

import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
import { Student } from '../entity/student';
@Component({
  selector: 'app-child',
  templateUrl: './child.component.html',
  styleUrls: ['./child.component.css']
})
export class ChildComponent implements OnInit {
  @Input() stu: Student;
  @Output() deleteEvent = new EventEmitter<number>();
  constructor() { }
  ngOnInit() {
  }
  delete(id) {
    this.stu = null;
    this.deleteEvent.emit(id);
  }
}
Copier après la connexion

html

<p *ngIf="stu">
  {{stu.id}} -- {{stu.name}} -- {{stu.age}}  <button (click)="delete(stu.id)">delete</button>
</p>
Copier après la connexion

Modifier app.component

ts

import { Component } from '@angular/core';
import { Student } from './entity/student';
@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  stus: Student[] = [
    {id: 1, name: '里斯', age: 3},
    {id: 2, name: '里斯2', age: 4},
    {id: 3, name: '里斯3', age: 5},
  ];
  stu: Student;
  constructor() {
  }
  selected(stu) {
    this.stu = stu;
  }
  deleteStu(id: number) {
    this.stus.forEach((val, index) => {
      if ( val.id === id) {
        this.stus.splice(index, 1);
        return;
      }
    });
  }
}
Copier après la connexion

html

<p>
  <ul>
    <li *ngFor="let stu of stus" (click)="selected(stu)"> {{stu.id}} -- {{stu.name}} -- {{stu.age}} </li>
  </ul>
</p>
<app-child [stu]="stu" (deleteEvent)="deleteStu($event)"></app-child>
Copier après la connexion

@Input() Très Simple, il s'agit de donner les données du composant parent à une propriété du composant enfant
@Output() Le composant enfant crée un EventEmitter, le fonctionnement du composant enfant déclenchera l'EventEmitter, puis assignera cet objet EventEmitter ; en une méthode du composant parent, changez la méthode. Elle obtiendra les paramètres donnés par l'objet EventEmitter puis les traitera

Pour plus de connaissances sur la programmation, veuillez visiter : Tutoriel de programmation ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!