How would you implement a form having two components where one component updates another?

For such cases, we can simply create a Shared service which holds the value, which one component updates and other component binds in its view.

@Injectable()
export class MyService {
    myVal: string;
}

@Component()
export class Component1 {
    constructor(private myService: MyService) {}
    onUpdated(newVal) {
       this.myService.myVal = newVal;
    }
}

@Component() {
export class Component2 implements OnInit {
  myVal: string;
  constructor(private myService: MyService) {}
  ngOnInit() {
    this.myVal = this.myService.myVal;
  }
}

For such cases, we can simply create a Shared service which holds the value, which one component updates and other component binds in its view.

@Injectable()
export class MyService {
    myVal: string;
}

@Component()
export class Component1 {
    constructor(private myService: MyService) {}
    onUpdated(newVal) {
       this.myService.myVal = newVal;
    }
}

@Component() {
export class Component2 implements OnInit {
  myVal: string;
  constructor(private myService: MyService) {}
  ngOnInit() {
    this.myVal = this.myService.myVal;
  }
}
Default image
Sriram Mannava

I'm a full-stack developer and a software enthusiast who likes to play around with cloud and tech stack out of curiosity.

Leave a Reply