在React JS中,将click
事件从一个组件传递到另一个组件通常涉及以下几种方法:
// 父组件
class ParentComponent extends React.Component {
handleClick = () => {
console.log('Click event received in ParentComponent');
}
render() {
return (
<div>
<ChildComponent onClick={this.handleClick} />
</div>
);
}
}
// 子组件
class ChildComponent extends React.Component {
render() {
return (
<button onClick={this.props.onClick}>Click Me</button>
);
}
}
// 创建一个Context
const ClickContext = React.createContext();
// 父组件
class ParentComponent extends React.Component {
handleClick = () => {
console.log('Click event received in ParentComponent');
}
render() {
return (
<ClickContext.Provider value={this.handleClick}>
<ChildComponent />
</ClickContext.Provider>
);
}
}
// 子组件
class ChildComponent extends React.Component {
static contextType = ClickContext;
render() {
return (
<button onClick={this.context}>Click Me</button>
);
}
}
问题:事件没有按预期触发。
this.handleClick = this.handleClick.bind(this);
)。通过上述方法,可以有效地在React组件之间传递和处理click
事件。
领取专属 10元无门槛券
手把手带您无忧上云