首页 >

聊聊Angular中父子组件间怎么传递数据

web前端|js教程聊聊Angular中父子组件间怎么传递数据
Angular,组件,父子组件传值
web前端-js教程
Angular中父子组件间怎么传递数据?下面本篇文章就来给大家介绍一下Angular中父组件向子组件传数据、子组件向父组件传数据的方法,希望对大家有所帮助!
优秀的源码,ubuntu看所有文件,tomcat配置完干什么,婴儿爬虫头疼,php网站搭建教程宝塔技术,seo外包需求lzw
自定义dialog源码,Ubuntu查看根,tomcat启动要20秒,小说爬虫js,php模拟登陆网页,天河区常规seo优化价格多少lzw
组件之间传递数据,最主要的就是父子组件之间传递数据, 例如:
挂q服务器源码,ubuntu安装远程工具,会计用爬虫技术,php转向,本地seo资料lzw
  

父组件传入数据给子组件,同时,子组件数据发生变化是,希望能够通知父组件。

Angular 中,@Input() 和 @Output() 为子组件提供了一种与其父组件通信的方法。 @Input() 允许父组件更新子组件中的数据。相反,@Output() 允许子组件向父组件发送数据。【相关教学推荐:《angular教学》】

父传子 @Input()

1. 子组件定义@Input()

子组件中的 @Input() 装饰器表示该属性可以从其父组件中获取值。

例如:

export class ChildComponent {  @Input() message: string;}

增加@Input() 装饰器的变量,除了数据可以从父组件传入后,其他逻辑和普通变量一致;

子组件的html代码中,既可使用message这个变量, 例如:

Parent says: {{message}}

2. 父组件传递变量给子组件

当父组件调用子组件时,可以把父组件的变量(如messageToChild) 传递给子组件

子传父 @Output()

Angular通过事件(Event)来实现子组件通知父组件数据的改变,父组件需要订阅该事件。

1. 子组件定义@Output

子组件定义@Output

export class ChildComponent {  // EventEmitter ,这意味着它是一个事件  // new EventEmitter() -   // 使用 Angular 来创建一个新的事件发射器,它发出的数据是 string 类型的。  @Output() newItemEvent = new EventEmitter();  addNewItem(value: string) {    this.newItemEvent.emit(value);  }}

子组件当数据发生变化时,调用这个addNewItem方法既可。例如,html中

2. 父组件订阅事件

1、父组件的ts代码中,增加一个处理上面事件的方法,例如

addItem(newItem: string) {    // logic here}

2、父组件的html中,订阅该事件。

事件绑定 (newItemEvent)='addItem($event)' 会把子组件中的 newItemEvent 事件连接到父组件的 addItem() 方法。

总结

使用@Input() 和 @Output() 可以很方便的实现父子组件之间的数据传递、共享。

可以同时使用 @Input() 和 @Output()

编程学习!!


聊聊Angular中父子组件间怎么传递数据
  • 小程序中怎么进行父子组件传值和方法调用?(方法汇总)
  • 小程序中怎么进行父子组件传值和方法调用?(方法汇总) | 小程序中怎么进行父子组件传值和方法调用?(方法汇总) ...

    聊聊Angular中父子组件间怎么传递数据
  • 详解Angular父子组件间如何传值?
  • 详解Angular父子组件间如何传值? | 详解Angular父子组件间如何传值? ...