如何在一个组件中调用方法,它将在另一个组件中调用另一个方法?

时间:2020-07-02 09:12:26

标签: typescript angular8

我对angular并不陌生,所以组件扩展对我来说很混乱。我有两个组件,如标题和内容。所以我在标头组件中有一个类似于filterChange()的方法,因此当我调用此方法时,它应该在另一个组件中调用另一个方法。我尝试了@input和@output,但是在那里我无法调用方法。

标题组件html:

<mat-radio-group[(ngModel)]="visibility" (ngModelChange)="filterChange()">
  <mat-radio-button [value]=null>true</mat-radio-button>
  <mat-radio-button *ngFor="let visibility of jobVisibilities"
                        [value]="visibility">false</mat-radio-button>
</mat-radio-group>

标题组件ts:

filterChange(){
 }

这是我的代码。我也尝试过服务,但是我不知道该怎么做。 这该怎么做?请帮我解决这个问题?

1 个答案:

答案 0 :(得分:1)

    Lets say u have 2 components ***HeaderComponent.ts*** and ***ContentComponent.ts***    
    U want to call the test() function from header component, which is in Content component
    
    * Import the ***content component*** 
    
    import {classname} from ./../content.component.ts;
    
    * Give the dependency injection
    
    constructor(){ public content : classname }
    
    filterChange(){
    
    /*you can call any content component function here*/
    
    let sample = this.content.test()
    console.log(sample)
    }