Я бы рекомендовал использовать службу связи в вашем случае.
сначала создайте increment.service.ts
import { Injectable } from '@angular/core';
import { Subject, Observable } from 'rxjs';
@Injectable({ providedIn: 'root' })
export class IncrementService {
private calcSource = new Subject<any>();
calc$: Observable<any> = this.calcSource.asObservable();
increment(x: number) {
this.calcSource.next(x);
}
}
, затем в вашем NavbarComponent
import {IncrementService} from '../increment.service'
constructor(private _incrementService: IncrementService) {}
incrementInHome() {
this._incrementService.increment(7);
}
в конце концов, в вашем HomeComponent
import {IncrementService} from '../increment.service'
calc = 5;
constructor(private _incrementService: IncrementService) {}
ngOnInit() {
this._incrementService.calc$.subscribe(x => this.calc += x)
}