Bün*_*gül 21 javascript data-binding angular
子组件:
export class Child {
@Input() public value: string;
public childFunction(){...}
}
Run Code Online (Sandbox Code Playgroud)
父组件:
export class Parent {
public value2: string;
function1(){ value2 = "a" }
function2(){ value2 = "b" }
}
Run Code Online (Sandbox Code Playgroud)
家长观点:
<child [value]="value2">
Run Code Online (Sandbox Code Playgroud)
每次在这个结构中更改value2时,有没有办法调用childFunction()?
Gün*_*uer 37
您可以使用ngOnChanges() 生命周期钩子
export class Child {
@Input() public value: string;
ngOnChanges(changes) {
this.childFunction()
}
public childFunction(){...}
}
Run Code Online (Sandbox Code Playgroud)
或使用二传手
export class Child {
@Input()
public set value(val: string) {
this._value = val;
this.childFunction();
}
public childFunction(){...}
}
Run Code Online (Sandbox Code Playgroud)