Angular父组件调用子组件的方法


Posted in Javascript onApril 02, 2018

理解组件

组件是一种特殊的指令,使用更简单的配置项来构建基于组件的应用程序架构

这样他能简单地写app,通过类似的web Component 或者angular2的样式。

web Component 是一个规范。马上就要成为标准。

应用组件的优点:

  • 比普通指令配置还简单
  • 提供更好的默认设置和最好的实践
  • 对基于组建的应用架构更优化。
  • 对angular2的升级更平滑。

不用组建的情况:

  • 对那些在 compile或者pre-link阶段要执行操作的指令,组件不能用,因为无法到达那个阶段。
  • 如果你想定义指令的  priority,terminal,multi-element,也不能用。
  • 组件只能通过元素标签触发,其他的只能用命令。

viewChild装饰器。

父组件的模版和控制器里调用子组件的API。

1、创建一个子组件child1里面只有一个greeting方法供父组件调用。

import { Component, OnInit } from '@angular/core';
@Component({
 selector: 'app-child1',
 templateUrl: './child1.component.html',
 styleUrls: ['./child1.component.css']
})
export class Child1Component implements OnInit {
 constructor() { }
 ngOnInit() {
 }
 greeting(name: string) {
 console.log("hello" + name);
 }
}

2、父组件中分别在模版中用模版本地变量调用和在控制器中用ts代码调用。

父组件写2个<app-child>并分别指定模版本地变量

<app-child1 #child1> </app-child1>
<app-child1 #child2> </app-child1>

3,在父组件控制器中声明一个由viewChild装饰器装饰的变量获得子组件的引用。

通过模版变量的名字child1找到相应的子组件并赋值给child1变量,拿到引用就可以调用子组件方法。

@ViewChild('child1')
child1:Child1Component; //父组件中获得子组件的引用
ngOnInit(){
 this.child1.greeting("Tom");
}

Angular父组件调用子组件的方法

4,在父组件模版中调用子组件方法。

在父组件模版中加一个button,点击时去调用子组件child2的greeting方法。

<app-child1 #child1> </app-child1>
<app-child1 #child2> </app-child1>
<button (click)="child2.greeting('Jerry')">调用child2的greeting方法</button>

Angular父组件调用子组件的方法

总结

以上所述是小编给大家介绍的Angular父组件调用子组件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
学习YUI.Ext 第六天--关于树TreePanel(Part 2异步获取节点)
Mar 10 Javascript
基于jQuery的左右滚动实现代码
Dec 03 Javascript
javascript模拟select,jselect的方法实现
Nov 08 Javascript
JS生成某个范围的随机数【四种情况详解】
Apr 20 Javascript
js实现简单的碰壁反弹效果
Aug 30 Javascript
AngularJs 国际化(I18n/L10n)详解
Sep 01 Javascript
react.js 翻页插件实例代码
Jan 19 Javascript
vue cli使用绝对路径引用图片问题的解决
Dec 06 Javascript
nginx部署访问vue-cli搭建的项目的方法
Feb 12 Javascript
js+canvas实现滑动拼图验证码功能
Mar 26 Javascript
关于echarts在节点显示动态数据及添加提示文本所遇到的问题
Apr 20 Javascript
35个最好用的Vue开源库(史上最全)
Jan 03 Javascript
微信小程序wx:for和wx:for-item的用法详解
Apr 01 #Javascript
微信小程序block的使用教程
Apr 01 #Javascript
JavaScript动态加载重复绑定问题
Apr 01 #Javascript
使用JSON格式提交数据到服务端的实例代码
Apr 01 #Javascript
Vue.js进阶知识点总结
Apr 01 #Javascript
vue 指定组件缓存实例详解
Apr 01 #Javascript
通过vue提供的keep-alive减少对服务器的请求次数
Apr 01 #Javascript
You might like
PHP性能优化 产生高度优化代码
2011/07/22 PHP
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
php结合redis高并发下发帖、发微博的实现方法
2016/12/15 PHP
php微信开发之关注事件
2018/06/14 PHP
PHP依赖注入原理与用法分析
2018/08/21 PHP
多个iframe自动调整大小的问题
2006/09/18 Javascript
JavaScript CSS修改学习第五章 给“上传”添加样式
2010/02/19 Javascript
js和jquery对dom节点的操作(创建/追加)
2013/04/21 Javascript
javascript内置对象arguments详解
2014/03/16 Javascript
js实现页面a向页面b传参的方法
2016/05/29 Javascript
Summernote实现图片上传功能的简单方法
2016/07/11 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
require.js+vue开发微信上传图片组件
2016/10/27 Javascript
VUE元素的隐藏和显示(v-show指令)
2017/06/23 Javascript
vue移动端弹框组件的实例
2018/09/25 Javascript
Web安全之XSS攻击与防御小结
2018/12/13 Javascript
Vue使用JSEncrypt实现rsa加密及挂载方法
2020/02/07 Javascript
python冒泡排序算法的实现代码
2013/11/21 Python
从零学Python之入门(四)运算
2014/05/27 Python
Pandas DataFrame 取一行数据会得到Series的方法
2018/11/10 Python
python自动化UI工具发送QQ消息的实例
2019/08/27 Python
pygame实现俄罗斯方块游戏(基础篇2)
2019/10/29 Python
自定义Django默认的sitemap站点地图样式
2020/03/04 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
2021/02/22 Python
Reebok俄罗斯官方网上商店:购买锐步运动服装和鞋子
2016/09/26 全球购物
SkinCeuticals官网:美国药妆品牌
2018/04/19 全球购物
艺龙旅行网酒店预订:国内、港澳台酒店
2018/06/26 全球购物
JSF如何进行表格处理及取值
2012/08/06 面试题
学前教育求职自荐信范文
2013/12/25 职场文书
安全技术说明书
2014/05/09 职场文书
幼儿园大班开学寄语
2014/08/02 职场文书
入党积极分子自我批评思想汇报
2014/10/10 职场文书
优秀团支部申报材料
2014/12/26 职场文书
教师个人教学总结
2015/02/11 职场文书
关于清明节的演讲稿2015
2015/03/18 职场文书
css常用字体属性与背景属性介绍
2022/02/28 HTML / CSS