我的目标是使用 BACK 按钮进行重定向,但到目前为止没有成功。 当我尝试将功能从子级传递给父级时,它会返回我:
_this.props.callHomeFunction不是函数
Parent.js
constructor(props) {
super(props);
this.state = {
okRedirect: false,
}
this.consoleToHome = this.consoleToHome.bind(this)
}
consoleToHome = (test) => {
// this.setState({ okRedirect: true });
console.log('go to home');
console.log(test);
}
render(){
return(
<Router>
<Select callHomeFunction={this.consoleToHome} />
Child.js
class BackButton extends Component {
changePage = () => {
const test = 'test';
console.log('click on home');
console.log(this.props);
this.props.callHomeFunction(test);
}
render() {
return (
<div className='back_buttons'>
<ul>
<li>
<button className='back_buttons back_button'
onClick={this.changePage}
>
答案 0 :(得分:1)
据我所见,您对组件的绑定是正确的,
请检查组件名称,您的子组件名称为BackButton,但是在包括时使用的是<< strong> select> 。
如果上述方法不能解决问题,请发布您的错误
答案 1 :(得分:0)
在Child.js中将构造函数与超级函数一起使用
constructor(props) {
super(props);
}
希望它会起作用