如何通过在父视图中单击事件来访问子组件中的函数 .
我的父视图中有两个按钮,每个按钮代表一个组件 .
<ul>
<li><button (click)="buttonOne()">component 1</button></li>
<li><button (click)="buttonTwo()">component 2</button></li>
</ul>
我想点击按钮组件1并显示组件1,当我点击按钮组件2时,隐藏组件1并显示组件2 .
child.component
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'component1',
templateUrl: './componentOne.component.html',
styleUrls: ['./componentOne.component.less']
})
export class ComponentOne implements OnInit {
showComponent: boolean = false;
constructor() {}
buttonOne(): boolean {
this.showComponent = true;
}
buttonTwo(): boolean {
this.showComponent = false;
}
ngOnInit() {}
}
parent.component
import { Component, OnInit } from '@angular/core';
import { ComponentOne } from '...parent-component/component-one.component';
@Component({
selector: 'parent-component',
templateUrl: 'parent-component.component.html',
styleUrls: ['parent-component.component.less']
})
export class ParentComponent implements OnInit {
constructor() {}
ngOnInit() {
}
ngOnDestroy() {
}
}
2 回答
显示子组件的代码应该在父组件中,它可以是这样的:
Parent component:
}
Parent component HTML:
我不知道你是如何创建组件的,但我是如何学习组件的
鉴于此,您应该将局部变量添加到组件HTML中,如下所示:
通过这样做,您允许Angular获得子引用,您可以使用
然后,允许你这样做
或者,在HTML中,您可以像这样使用局部变量