Angular 2父子组件数据传递之@Input和@Output详解 (上)

 更新时间:2017年07月05日 08:55:17   作者:小处成就大事  
这篇文章主要给大家介绍了关于Angular 2父子组件数据传递之@Input和@Output的相关资料,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来看看吧。

前言

为了让大家学习起来轻松、易懂,小编尽量做到篇幅短,语言通俗易懂,知识点分段来讲,以免太长了看起来很累,也很容易失去耐心阅读下去,希望大家理解和支持,同时希望大家点赞和分享出去,让更多的志同道合的朋友来学习

Angular 提供了@Input和@Output语法来处理组件数据的流入流出,接下来我们通过@Input和@Output来演示父子组建之间的数据传递

父组件向子组件传递数据

父组件传递数据到子组件通过@Input方式的现实方式

第一步:定义父组件

ParentComponent.ts


(1).这里定义了两个类属性user和parent_data,

(2).一个next()方法,next方法用于将页面输入的数据赋值给parent_data属性

ParentComponent.html


对应的页面:

表单输入数据,点击页面上的按钮,调用页面next()方法

next()方法内部将输入的数据user赋值给parent_data。parent_data获取到数据之后在模版中把获取到的值再赋给子组件中先前定义好的data变量到这里父组件就完成 类数据的传递,下面我们看看子组件怎么去接受这个值?

第二步:定义子组件:

ChildenComponent.ts

(1).这里定义了一个类属性data,并且用@Input装饰器修饰,修饰过后的data变量就具备接受父组件传过来的数据了,这里定义的data就是在页面接收父组件传递的data变量,看下面代码(2).还实现了一个onChanges接口,onChanges接口必须实现ngOnChanges方法,用来监控数据的变化,如果父组件的数据发生变化,我们这里就输出改变后的数据,父组件中表单输入的值发生变化,再点击按钮调用next()方法,ngonChanges会检测到数据变化, console.log(this.data)打印新的输出到控制台

下面我们看看效果

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • 详解angularJs中自定义directive的数据交互

    详解angularJs中自定义directive的数据交互

    这篇文章主要介绍了详解angularJs中自定义directive的数据交互,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • 如何在Angular8.0下使用ngx-translate进行国际化配置

    如何在Angular8.0下使用ngx-translate进行国际化配置

    这篇文章主要介绍了如何在Angular8.0下使用ngx-translate进行国际化配置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Angular.js中angular-ui-router的简单实践

    Angular.js中angular-ui-router的简单实践

    本篇文章主要介绍了Angular.js中angular-ui-router的简单实践,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Angular.js实现多个checkbox只能选择一个的方法示例

    Angular.js实现多个checkbox只能选择一个的方法示例

    这篇文章主要给大家介绍了利用Angular.js实现多个checkbox只能选择一个的方法,文中给出了详细的示例代码,相信对大家具有一定的参考价值,下面来一起看看吧。
    2017-02-02
  • Angular2中select用法之设置默认值与事件详解

    Angular2中select用法之设置默认值与事件详解

    在Angular.JS中可以使用数组或对象创建一个下拉列表选项。关于Angular.js中select的基础相信大家应该都已经了解了,那么下面这篇文章主要给大家介绍了Angular2中select用法之设置默认值与事件的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-05-05
  • AngularJS解决ng界面长表达式(ui-set)的方法分析

    AngularJS解决ng界面长表达式(ui-set)的方法分析

    这篇文章主要介绍了AngularJS解决ng界面长表达式(ui-set)的方法,通过具体问题的分析并结合实例形式给出了AngularJS长表达式的相关使用技巧,需要的朋友可以参考下
    2016-11-11
  • 如何在AngularJs中调用第三方插件库

    如何在AngularJs中调用第三方插件库

    在AngularJs中我们会不可避免的使用第三方库,这篇文章主要介绍了如何在AngularJs中调用第三方插件库,有兴趣的可以了解下
    2017-05-05
  • Angularjs实现下拉框联动的示例代码

    Angularjs实现下拉框联动的示例代码

    本篇文章主要介绍了Angularjs下拉框联动的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • AngularJS自定义服务与fliter的混合使用

    AngularJS自定义服务与fliter的混合使用

    这篇文章主要介绍了AngularJS自定义服务与fliter的混合使用的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • 浅谈Angular HttpClient简单入门

    浅谈Angular HttpClient简单入门

    本篇文章主要介绍了浅谈Angular HttpClient 简单入门,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05

最新评论