码迷,mamicode.com
首页 > 其他好文 > 详细

Angular 中的 dom 操作(ViewChild)以及父子组件中通过 ViewChild 调用子组件的方法

时间:2019-05-21 11:20:53      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:ini   color   any   css   view   after   scom   info   ima   

<app-header #header></app-header>

<div #myBox>

   我是一个dom节点
</div>


<button (click)="getChildRun()">获取子组件的方法</button>
/*

ViewChild获取dom节点
    1、模板中给dom起一个名字
      <div #myBox>
        我是一个dom节点
      </div>
    2、在业务逻辑里面引入ViewChild
    import { Component, OnInit,ViewChild} from ‘@angular/core‘;
    3、 写在类里面    @ViewChild(‘myBox‘) myBox:any;
    4、ngAfterViewInit生命周期函数里面获取dom
    this.myBox.nativeElement
*/


import { Component, OnInit,ViewChild} from ‘@angular/core‘;

@Component({
  selector: ‘app-news‘,
  templateUrl: ‘./news.component.html‘,
  styleUrls: [‘./news.component.scss‘]
})
export class NewsComponent implements OnInit {
  //获取dom节点
  @ViewChild(‘myBox‘) myBox:any;
  //获取一个组件
  @ViewChild(‘header‘) header:any;
  constructor() { }

  ngOnInit() {
  }

  ngAfterViewInit(): void {
    console.log(this.myBox.nativeElement);
    this.myBox.nativeElement.style.width=‘100px‘;
    this.myBox.nativeElement.style.height=‘100px‘;
    this.myBox.nativeElement.style.background=‘red‘;
    console.log(this.myBox.nativeElement.innerHTML);
  }


  getChildRun(){

    //调用子组件里面的方法
     this.header.run();
     
  }
}

效果:技术图片

Angular 中的 dom 操作(ViewChild)以及父子组件中通过 ViewChild 调用子组件的方法

标签:ini   color   any   css   view   after   scom   info   ima   

原文地址:https://www.cnblogs.com/loaderman/p/10898339.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!