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


Posted in Javascript onJuly 05, 2017

前言

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

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

父组件向子组件传递数据

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

第一步:定义父组件

ParentComponent.ts

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

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

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

ParentComponent.html

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

对应的页面:

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

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

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

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

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

第二步:定义子组件:

ChildenComponent.ts

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

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

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

下面我们看看效果

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

总结

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

Javascript 相关文章推荐
下载网站打开页面后间隔多少时间才显示下载链接地址的代码
Apr 25 Javascript
基于jQuery的Tab选项框效果代码(插件)
Mar 01 Javascript
js中将具有数字属性名的对象转换为数组
Mar 06 Javascript
js中关于String对象的replace使用详解
May 24 Javascript
推荐6款基于jQuery实现图片效果插件
Dec 07 Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
May 09 Javascript
jQuery结合CSS制作动态的下拉菜单
Oct 27 Javascript
Node.js调试技术总结分享
Mar 12 Javascript
js每隔两秒输出数组中的一项(实例)
May 28 Javascript
详解vuejs几种不同组件(页面)间传值的方式
Jun 01 Javascript
vue插件开发之使用pdf.js实现手机端在线预览pdf文档的方法
Jul 12 Javascript
JavaScript工具库之Lodash详解
Jun 15 Javascript
js实现图片旋转 js滚动鼠标中间对图片放大缩小
Jul 05 #Javascript
vue2.X组件学习心得(新手必看篇)
Jul 05 #Javascript
Angular2 自定义validators的实现方法
Jul 05 #Javascript
js获取元素的偏移量offset简单方法(必看)
Jul 05 #Javascript
使用angular帮你实现拖拽的示例
Jul 05 #Javascript
使用JavaScript根据图片获取条形码的方法
Jul 04 #Javascript
jquery拖动改变div大小
Jul 04 #jQuery
You might like
Yii框架在页面输出执行sql语句以方便调试的实现方法
2014/12/24 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
2015/05/21 PHP
浅谈php处理后端&接口访问超时的解决方法
2016/10/29 PHP
PHP实现负载均衡session共享redis缓存操作示例
2018/08/22 PHP
script的async属性以非阻塞的模式加载脚本
2013/01/15 Javascript
jQuery中filter()和find()的区别深入了解
2013/09/25 Javascript
js的touch事件的实际引用
2014/10/13 Javascript
一篇文章掌握RequireJS常用知识
2016/01/26 Javascript
Hallo.js基于jQuery UI所见即所得的Web编辑器
2016/01/26 Javascript
jQuery搜索框效果实现代码(百度关键词联想)
2021/02/25 Javascript
jQuery常用选择器详解
2017/07/17 jQuery
Vue.js实现图片的随意拖动方法
2018/03/08 Javascript
vue better scroll 无法滚动的解决方法
2018/06/07 Javascript
关于vue组件事件属性穿透详解
2019/10/28 Javascript
Ant Design Vue 添加区分中英文的长度校验功能
2020/01/21 Javascript
vue路由分文件拆分管理详解
2020/08/13 Javascript
python网络编程学习笔记(三):socket网络服务器
2014/06/09 Python
采用Psyco实现python执行速度提高到与编译语言一样的水平
2014/10/11 Python
Python中的map()函数和reduce()函数的用法
2015/04/27 Python
Python利用正则表达式匹配并截取指定子串及去重的方法
2015/07/30 Python
python 中random模块的常用方法总结
2017/07/08 Python
python学习开发mock接口
2019/04/28 Python
如何利用python给图片添加半透明水印
2019/09/06 Python
如何在Django中使用聚合的实现示例
2020/03/23 Python
python连接mysql数据库并读取数据的实现
2020/09/25 Python
html5使用canvas实现弹幕功能示例
2017/09/11 HTML / CSS
印度低票价航空公司:GoAir
2017/10/11 全球购物
数据库设计的包括哪两种,请分别进行说明
2016/07/15 面试题
敬老模范事迹
2014/05/21 职场文书
安全保卫工作竞聘材料
2014/08/25 职场文书
个人对照检查材料思想汇报(四风问题)
2014/09/25 职场文书
科学发展观标语
2014/10/08 职场文书
社区党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书
导游词之无锡唐城
2019/12/12 职场文书
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
2022/05/25 SQL Server