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 相关文章推荐
通过ifame指向的页面高度调整iframe的高度
Oct 05 Javascript
重定向实现代码
Nov 20 Javascript
js实现addClass,removeClass,hasClass的函数代码
Jul 13 Javascript
SeaJS入门教程系列之使用SeaJS(二)
Mar 03 Javascript
js数字舍入误差以及解决方法(必看篇)
Feb 28 Javascript
d3.js入门教程之数据绑定详解
Apr 28 Javascript
详解vue 配合vue-resource调用接口获取数据
Jun 22 Javascript
Angular实现的简单定时器功能示例
Dec 28 Javascript
jQuery中的类名选择器(.class)用法简单示例
May 14 jQuery
解决layer.open弹出框不能获取input框的值为空的问题
Sep 10 Javascript
Javascript call及apply应用场景及实例
Aug 26 Javascript
vue.js页面加载执行created,mounted的先后顺序说明
Nov 07 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
一个显示天气预报的程序
2006/10/09 PHP
Laravel框架Request、Response及Session操作示例
2019/05/06 PHP
关于laravel后台模板laravel-admin select框的使用详解
2019/10/03 PHP
javascript &&和||运算法的另类使用技巧
2009/11/28 Javascript
jquery 扑捉回车键事件代码
2014/04/24 Javascript
一行命令搞定node.js 版本升级
2014/07/20 Javascript
jQuery设置指定网页元素宽度和高度的方法
2015/03/25 Javascript
四种参数传递的形式——URL,超链接,js,form表单
2015/07/24 Javascript
微信小程序 标签传入数据
2017/05/08 Javascript
微信小程序实现传参数的几种方法示例
2018/01/10 Javascript
vue2.0 + ele的循环表单及验证字段方法
2018/09/18 Javascript
js设置鼠标悬停改变背景色实现详解
2019/06/26 Javascript
vue 实现通过vuex 存储值 在不同界面使用
2019/11/11 Javascript
Vue环境搭建+VSCode+Win10的详细教程
2020/08/19 Javascript
通过实例解析jQ Ajax操作相关原理
2020/09/23 Javascript
基于vue与element实现创建试卷相关功能(实例代码)
2020/12/07 Vue.js
[05:53]完美世界携手游戏风云打造 卡尔工作室观战系统篇
2013/04/22 DOTA
利用Python爬虫给孩子起个好名字
2017/02/14 Python
matplotlib绘制多个子图(subplot)的方法
2019/12/03 Python
jupyternotebook 撤销删除的操作方式
2020/04/17 Python
深入浅出CSS3 background-clip,background-origin和border-image教程
2011/01/27 HTML / CSS
澳大利亚吉他在线:Artist Guitars
2017/03/30 全球购物
图库照片、免版税图片、矢量艺术、视频片段:Depositphotos
2019/08/02 全球购物
自荐信要包含哪些内容
2013/11/06 职场文书
优秀管理者获奖感言
2014/02/17 职场文书
电气工程及其自动化专业毕业生自荐信
2014/06/21 职场文书
创先争优活动心得体会
2014/09/04 职场文书
2014年最新个人对照检查材料范文
2014/09/25 职场文书
群众路线四风自我剖析材料
2014/10/08 职场文书
三年级学生期末评语
2014/12/26 职场文书
欠款证明
2015/06/24 职场文书
表彰大会新闻稿
2015/07/17 职场文书
医院中层管理人员培训心得体会
2016/01/11 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书
Python 数据科学 Matplotlib图库详解
2021/07/07 Python
Java设计模式之代理模式
2022/04/22 Java/Android