Inside the typescript, there are a name variable takes input from another component.
@Input() name : any ;
And inside the ngOnChange I print the SimpleChange object like this.
ngOnChanges(changes: SimpleChange){
console.log(changes);
console.log(changes.currentValue);
}
The result in the console is as followed.

I don't understand why in console, it can tells there are string "Cafeteria Old Beach" for currentValue property.
Yet when I console.log(changes.currentValue), it returns undefined. How can I properly access the currentValue property value? Thanks in advance.
CodePudding user response:
it is because after the changes there should be prop, in your case you have made changes.currentValue. and also change SimpleChange to SimpleChanges Please try following.
import { SimpleChanges } from '@angular/core';
export class TestComponent {
@Input() name : any ;
constructor(){}
ngOnChanges(changes: SimpleChanges){
console.log(changes);
console.log(changes.name.currentValue);
console.log(changes.name.previousValue);
}
}
