首先,对不起,标题不好。我无法制定出与我的问题有关的合适的答案。
我有一个与react代码有关的小问题。 My Child组件作为道具传递了onValueChanged函数。父级的父级已将此函数作为道具提供给父级。 当Child触发onValueChanged函数时,如何调用我的specialFunction。
(!)我无法在Child中扩展onClick调用,这会触发onValueChanged函数。子代码无法更改。
class Parent extends React.Component {
constructor(props) {
super(props);
}
specialFunction(){
/* do something */
}
render() {
return (
<Child onValueChanged={this.props.onValueChanged} />
);
}
}
class Child extends React.Component {
constructor(props) {
super(props);
}
render() {
return (
<Button onClick={this.prop.onValueChanged} />
);
}
}
答案 0 :(得分:1)
插入另一个函数并将其传递给下一个(然后触发您的实例方法):
<Child onValueChanged={(...args) => {
this.specialFunction();
this.props.onValueChanged(...args);
}} />