【Angular】父组件监听子组件事件(传参)


Angular官方文档Demo地址:>component-interaction#parent-listens-for-child-event

举一个自己在写的项目🌰

子组件 imageupload 中的一个事件 onCropped(e:ImgCropperEvent)

onCropped(e: ImgCropperEvent) {
    this.croppedImage = e.dataURL;
    console.log("cropped img: ", e);
    // console.log("dataURL", e.dataURL);
    this.imgurl = e.dataURL;
    this.getImgUrl.emit(this.imgurl);
  }

目的:是想要在父组件中获取到子组件的数据,我选择了通过监听事件的方法来传递。

用到的组件:

import {Output,EventEmitter} from "@angular/core";

 

@Output() getImgUrl = new EventEmitter<string>();

@Output() 声明getImgUrl的同时输出

 

子组件的CSS selector名:

 

 

父组件 使用该selector:

<app-images-editorbox (getImgUrl)="onGetImgUrl($event)"></app-images-editorbox>

 

当监听到事件发生时会调用onGetImgUrl()事件处理, 事件参数(用 $event 表示)传给事件处理方法。

 

onGetImgUrl(imgUrl: string) {
    this.imgUrl = imgUrl;
  }

 

画个图梳理一下:

 

 

 

 

当然了还有许多方法来进行组件之间的通讯,选择合适的方法来进行开发。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM