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 相关文章推荐
jquery 学习之二 属性 文本与值(text,val)
Nov 25 Javascript
JavaScript 图像动画的小demo
May 23 Javascript
js中typeof的用法汇总
Dec 12 Javascript
JavaScript核心语法总结(推荐)
Jun 02 Javascript
Node.JS中事件轮询(Event Loop)的解析
Feb 25 Javascript
Javascript中八种遍历方法的执行速度深度对比
Apr 25 Javascript
基于VUE移动音乐WEBAPP跨域请求失败的解决方法
Jan 16 Javascript
p5.js临摹旋转爱心
Oct 23 Javascript
vue 实现v-for循环回来的数据动态绑定id
Nov 07 Javascript
详细分析vue表单数据的绑定
Jul 20 Javascript
微信小程序绘制半圆(弧形)进度条
Nov 18 Javascript
vue3+typeScript穿梭框的实现示例
Dec 29 Vue.js
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
11个PHP 分页脚本推荐
2011/08/15 PHP
PHP对象转换为数组函数(递归方法)
2012/02/04 PHP
分析 JavaScript 中令人困惑的变量赋值
2007/08/13 Javascript
用JavaScrpt实现文件夹简单轻松加密的实现方法图文
2008/09/08 Javascript
js几个验证函数代码
2010/03/25 Javascript
jQuery 工具函数学习资料
2010/04/29 Javascript
javascript window.confirm确认 取消对话框实现代码小结
2012/10/21 Javascript
js代码实现的加入收藏效果并兼容主流浏览器
2014/06/23 Javascript
Windows系统中安装nodejs图文教程
2015/02/28 NodeJs
jQuery实现带动画效果的二级下拉导航方法
2015/03/11 Javascript
jQuery常用且重要方法汇总
2015/07/13 Javascript
jQuery获取URL请求参数的方法
2015/07/18 Javascript
JavaScript自定义分页样式
2017/01/17 Javascript
JavaScript实现随机数生成器(去重)
2017/10/13 Javascript
ActiveX控件的使用-js实现打印超市小票功能代码详解
2017/11/22 Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
2018/05/15 Javascript
微信小程序点击图片实现长按预览、保存、识别带参数二维码、转发等功能
2019/07/20 Javascript
使用wxPython获取系统剪贴板中的数据的教程
2015/05/06 Python
Python实现破解猜数游戏算法示例
2017/09/25 Python
Python如何生成树形图案
2018/01/03 Python
Python实现基于C/S架构的聊天室功能详解
2018/07/07 Python
python实现机器学习之多元线性回归
2018/09/06 Python
通过python将大量文件按修改时间分类的方法
2018/10/17 Python
Python3 文章标题关键字提取的例子
2019/08/26 Python
python3 mmh3安装及使用方法
2019/10/09 Python
python模拟实现分发扑克牌
2020/04/22 Python
python中requests模拟登录的三种方式(携带cookie/session进行请求网站)
2020/11/17 Python
SpringBoot首页设置解析(推荐)
2021/02/11 Python
HTML5新增的标签和属性归纳总结
2018/05/02 HTML / CSS
canvas与html5实现视频截图功能示例
2016/12/15 HTML / CSS
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
广州足迹信息技术有限公司Java软件工程师试题
2014/02/15 面试题
写好求职应聘自荐信的三部曲
2013/09/21 职场文书
我为党旗添光彩演讲稿
2014/09/13 职场文书
班子群众路线教育实践个人对照检查材料思想汇报
2014/09/30 职场文书
Python使用pandas导入csv文件内容的示例代码
2022/12/24 Python