1. // 泛型:任意类型
  2. class Person<T>{
  3. emit(msg:T){
  4. console.log(msg);
  5. }
  6. }
  7. var p = new Person<string>();
  8. p.emit("hello world")

2-1 子组件引入Output和EventEmitter

  1. import { Component, OnInit,Input,Output,EventEmitter } from '@angular/core';

2-2 子组件中实例化EventEmitter

  1. @Output() private outer = new EventEmitter<string>();

2-3 子组件中通过EventEmitter实例化的对象outer,广播数据

  1. handleClick(){
  2. this.outer.emit("101001");
  3. }
  1. <button (click)="handleClick()">向父传参</button>

2-4 父组件中接收事件

  1. <app-header (outer)="getId($event)"></app-header>
  1. export class AppComponent {
  2. getId(id:string){
  3. console.log(id);
  4. }
  5. }