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


Posted in Javascript onJuly 05, 2017

前言

之前已经给大家介绍了Angular 2父子组件数据传递之@Input和@Output的相关内容,下面这篇文章我们再进一步的进行介绍:

子组件向父组件传递数据使用事件传递是子组件向父组件传递数据最常用的方式,子组件需要实例化EventEmitter类来订阅和触发自定义事件

第一步定义子组件

childenComponent.ts

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

(1).实例化EventEmitter,赋值给event,event被@Output装饰器定义为输出属性,这样event具备了向上级传递数据的能力,通过调用EventEmitter类中定义的emit方法,来向上传递数据

(2).定义一个name属性,用于接受子组件页面的输入

(3).定义upward方法,用于子组件页面点击事件 触发事件调用,upward()方法里面调用自定义事件event来触发emit方法 传递数据

childenComponent.html

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

第二步定义父组件

parentComponent.ts

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

parentComponent.html

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

父组件通过绑定自定义事件event ,来订阅来自子组件触发事件(这里是点击事件),当我们点击子组件上面的按钮,调用子组件的upward()方法,内部实现会调用this.event.emit(this.name);传递数据,自此父组件就能够监听自定义事件event。调用getData来接收传递过来的数据

最终效果:表单输入数据,点击页面按钮,数据传递到父组件,在显示出来

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

总结

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

Javascript 相关文章推荐
详解JavaScript中的事件流和事件处理程序
May 20 Javascript
使用jsonp实现跨域获取数据实例讲解
Dec 25 Javascript
javascript实现右下角广告框效果
Feb 01 Javascript
理解javascript中的Function.prototype.bind的方法
Feb 03 Javascript
js中数组插入、删除元素操作的方法
Feb 15 Javascript
JS隐藏号码中间4位代码实例
Apr 09 Javascript
如何在微信小程序中实现Mixins方案
Jun 20 Javascript
如何使用50行javaScript代码实现简单版的call,apply,bind
Aug 14 Javascript
用Golang运行JavaScript的实现示例
Nov 25 Javascript
使用element-ui +Vue 解决 table 里包含表单验证的问题
Jul 17 Javascript
解决vuex刷新数据消失问题
Nov 12 Javascript
React列表栏及购物车组件使用详解
Jun 28 Javascript
使用prop解决一个checkbox选中后再次选中失效的问题
Jul 05 #Javascript
JS鼠标滚动分页效果示例
Jul 05 #Javascript
jQuery实现返回顶部按钮和scroll滚动功能[带动画效果]
Jul 05 #jQuery
Angular 2父子组件数据传递之@Input和@Output详解 (上)
Jul 05 #Javascript
js实现图片旋转 js滚动鼠标中间对图片放大缩小
Jul 05 #Javascript
vue2.X组件学习心得(新手必看篇)
Jul 05 #Javascript
Angular2 自定义validators的实现方法
Jul 05 #Javascript
You might like
实例讲解PHP面向对象之多态
2014/08/20 PHP
PHP学习记录之数组函数
2018/06/01 PHP
JSQL 批量图片切换的实现代码
2010/05/05 Javascript
左侧是表头的JS表格控件(自写,网上没有的)
2013/06/04 Javascript
nodejs开发环境配置与使用
2014/11/17 NodeJs
JavaScript-html标题滚动效果的简单实现
2016/09/08 Javascript
jQuery事件用法详解
2016/10/06 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
element vue validate验证名称重复 输入框与后台重复验证 特殊字符 字符长度 及注意事项小结【实例代码】
2018/11/20 Javascript
原生js基于canvas实现一个简单的前端截图工具代码实例
2019/09/10 Javascript
基于vue+uniapp直播项目实现uni-app仿抖音/陌陌直播室功能
2019/11/12 Javascript
Vue的全局过滤器和私有过滤器的实现
2020/04/20 Javascript
[01:09:40]Newbee vs Pain 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python中endswith()函数的基本使用
2015/04/07 Python
使用Python对IP进行转换的一些操作技巧小结
2015/11/09 Python
Python使用wxPython实现计算器
2018/01/30 Python
python机器学习之贝叶斯分类
2018/03/26 Python
python用pandas数据加载、存储与文件格式的实例
2018/12/07 Python
python输入多行字符串的方法总结
2019/07/02 Python
python3 实现爬取TOP500的音乐信息并存储到mongoDB数据库中
2019/08/24 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
2019/09/29 Python
Django中从mysql数据库中获取数据传到echarts方式
2020/04/07 Python
python使用自定义钉钉机器人的示例代码
2020/06/24 Python
Python下使用Trackbar实现绘图板
2020/10/27 Python
python中reload重载实例用法
2020/12/15 Python
去除python中的字符串空格的简单方法
2020/12/22 Python
美国LOGO设计公司:The Logo Company
2018/07/16 全球购物
解释一下钝化(Swap out)
2016/12/26 面试题
求职信内容考虑哪几点
2013/10/05 职场文书
英语专业个人求职信范文
2014/02/01 职场文书
工程专业求职自荐书范文
2014/02/08 职场文书
庭外和解协议书
2016/03/23 职场文书
JavaScript实现登录窗体
2021/06/22 Javascript
探讨Java中的深浅拷贝问题
2021/06/26 Java/Android
解决vue-router的beforeRouteUpdate不能触发
2022/04/14 Vue.js
MySQL自定义函数及触发器
2022/08/05 MySQL