我有两个组成部分 A 和 B 。 A 有一个按钮,单击后,我想向组件 B 的元素(例如c
)中添加类<div></div>
。我有尝试@Input
并使函数静态,请在其他组件中使用它。它不起作用。
答案 0 :(得分:0)
您可以在组件 A 中以@Output
的形式提供事件,并监听该输出。如果触发了该事件,则可以在组件 B 上使用ngClass
设置类'c'。
组件A:
@Component({
selector: 'app-component-a',
templateUrl: './app-component-a.component.html',
styleUrls: ['./app-component-a.component.scss']
})
export class ComponentA implements OnInit {
@Output() onClickEvent: Event;
ngOnInit() {
}
onClick() {
event.emit();
}
}
主要组件:
@Component({
selector: 'app-main-component',
templateUrl: './app-main-component.component.html',
styleUrls: ['./app-main-component.component.scss']
})
export class MainComponent implements OnInit {
whenClicked: boolean = false;
ngOnInit() {
}
onClickTriggered() {
whenClicked = true;
}
}
主要组件HTML:
<app-component-a (onClickEvent)="onClickTriggered()"></app-component-a>
<app-component-b [ngClass]="{'c': whenClicked}"