Angular中@Output()的使用方法
子component中的html文件
<button (click)="Send()">送出</button><br>
子component中的ts文件
import { Component, OnInit, Output } from '@angular/core'; import { EventEmitter } from '@angular/core'; @Component({ selector: 'app-todo-input', templateUrl: './todo-input.component.html', styleUrls: ['./todo-input.component.css'] }) export class TodoInputComponent implements OnInit { public content: string; @Output() onSend: EventEmitter<string> = new EventEmitter<string>(); constructor() { } ngOnInit(): void { this.content = "Hello"; } Send(){ this.onSend.emit(this.content); } }
父component中的html
<app-todo-input (onSend)="onSend($event)"></app-todo-input>
父component中的ts
import { Component, OnInit } from '@angular/core'; import {Todo} from '../../models/todo' @Component({ selector: 'app-todo', templateUrl: './todo.component.html', styleUrls: ['./todo.component.css'] }) export class TodoComponent implements OnInit { public List:Todo[]=[]; constructor() { } ngOnInit(): void { // this.List = [ // {id:1,content:'Test'}, // {id:2,content:'Test2'}, // {id:3,content:'Test3'}, // ]; } onSend(content: string){ alert(content); } }