我想通过道具,但仍然得到错误

时间:2018-03-12 22:25:54

标签: reactjs

你好我们有登录的组件我想在家庭组件中传递它的值,但我仍然得到这样的错误

TypeError: this.props.come is not a function
this.props.come(this.state.id);

这是我的登录组件

this.login=this.login.bind(this);

login(e)
{e.preventDefault();
if(this.state.id===''&& this.state.name===''&&this.state.gender==='')
{
    alert('fill ');

}
else{

}

if(this.state.id && this.state.name && this.state.gender)
    {
        this.props.come(this.state.id,this.state.name,this.state.gender);
    }
    else{
        console.log('nothing');
    }

这是我的家庭组件,我正在接受道具

this.comingfromform=this.coming.bind(this);

coming(id,name,gender)
{
this.setState({yourid:id,yourname:name,yourgender:gender});
console.log('hey r u come ?');
}
<Route  path='/login' component={Login} come={this.coming.bind(this)}/>
          <Route  path='/join' component={Join}/>

我刚刚添加了绑定功能的代码我的construtor onclick功能从道具将通过的地方和家庭组件相同...如果你们有任何想法请帮助我

1 个答案:

答案 0 :(得分:0)

查看有关React-Router Route render的文档: render: func

<Route path="somepath" render={() => <Login come={...} />} />