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截取中文字符串的实现代码
Dec 22 Javascript
Javascript的常规数组和关联数组对比小结
May 24 Javascript
JS隐藏参数post传值实例
Apr 18 Javascript
$.extend 的一个小问题
Jun 18 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
Nov 22 Javascript
JavaScript的setter与getter方法
Nov 29 Javascript
微信小程序中换行空格(多个空格)写法详解
Jul 10 Javascript
Node.js动手撸一个静态资源服务器的方法
Mar 09 Javascript
简单了解微信小程序的目录结构
Jul 01 Javascript
Layui Table js 模拟选中checkbox的例子
Sep 03 Javascript
ES6学习教程之Promise用法详解
Nov 22 Javascript
解决vue-router的beforeRouteUpdate不能触发
Apr 14 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
Can't create/write to file 'C:\WINDOWS\TEMP\...MYSQL报错解决方法
2011/06/30 PHP
PHP面向对象程序设计之类与反射API详解
2016/12/02 PHP
php生出随机字符串
2017/07/06 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
2017/12/21 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
PHP封装的完整分页类示例
2018/08/21 PHP
使用jQuery+HttpHandler+xml模拟一个三级联动的例子
2011/08/09 Javascript
详解JS 比较两个Json对象的值是否相等的实例
2013/11/20 Javascript
Jquery选择器中使用变量实现动态选择例子
2014/07/25 Javascript
jquery幻灯片插件bxslider样式改进实例
2014/10/15 Javascript
JavaScript_object基础入门(必看篇)
2016/06/13 Javascript
dul无法加载bootstrap实现unload table/user恢复
2016/09/29 Javascript
微信小程序 wxapp内容组件 icon详细介绍
2016/10/31 Javascript
js时间控件只显示年月
2017/01/08 Javascript
Bootstrap的Carousel配合dropload.js实现移动端滑动切换图片
2017/03/10 Javascript
jQuery实现动态添加和删除input框实例代码
2019/03/26 jQuery
Vuejs学习笔记之使用指令v-model完成表单的数据双向绑定
2019/04/29 Javascript
layui的select联动实现代码
2019/09/28 Javascript
JS实现骰子3D旋转效果
2019/10/24 Javascript
小程序实现长按保存图片的方法
2019/12/31 Javascript
简单了解JavaScript arguement原理及作用
2020/05/28 Javascript
vue渲染方式render和template的区别
2020/06/05 Javascript
Vue+Vant 图片上传加显示的案例
2020/11/03 Javascript
Python3实现的简单验证码识别功能示例
2018/05/02 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
Python爬取豆瓣数据实现过程解析
2020/10/27 Python
canvas探照灯效果的示例代码
2018/11/30 HTML / CSS
Agoda台湾官网:国内外订房2折起
2018/03/20 全球购物
波兰最早的运动鞋精品店之一:Street Supply
2019/08/29 全球购物
大专生自我鉴定范文
2013/10/01 职场文书
初三政治教学反思
2014/01/30 职场文书
工厂会计员职责
2014/02/06 职场文书
学生会竞选演讲稿纪检部
2014/08/25 职场文书
七年级写作指导之游记作文
2019/10/07 职场文书
图文详解nginx日志切割的实现
2022/01/18 Servers
Python FuzzyWuzzy实现模糊匹配
2022/04/28 Python