通过 React Router

我想通过函数将函数转移到子组件 React Router. 我试图做到这一点,但似乎它没有工作。


class App extends Component {
constructor/props/ {
super/props/
}

render// {
return /
<div classname="App">
<div classname="content">
<div classname="centered-wrapper">
<switch>
<route component="{Welcome}" exact="" path="/"></route>
<route =="" path="/life" render="{props"> <life sayhello="{this.sayHello//}"></life>} /&gt;
</route></switch>
</div>
</div>
/;
}
}

export default App;


我想打电话
sayHello//

在组件中 Life 通过以下方式:


<div classname="hello">{ this.props.sayHello// } I'm <link to="/life"/>Marco! Welcome to my hood.</div>


</div>
<div class="answer_text">
代替:


<route =="" path="/life" render="{props"> <life sayhello="{this.sayHello//}"></life>} /&gt;





<route =="" path="/life" render="{props"> <life sayhello="{this.sayHello}"></life>} /&gt;


错误的道具接收函数调用的结果
sayHello//

而不是函数本身。
</route></route></div>
<div class="answer_text">
您可以称之为并传达返回结果,而不是传输功能 prop.


sayHello // function object
sayHello// // function call, evaluates to return


删除括号:


render={props =&gt; <life sayhello="{this.sayHello}"></life>}


将来,看看您在控制台中看到的任何错误,并将其添加到您的问题中。 如果你试图打电话
sayHello

在组件中
Life

, 这可能看到了类似的错误:


Uncaught TypeError: undefined is not a function


通过这些信息,您可以自己找到问题,或者对那些试图提供帮助的人来说更能理解 :/
</div>
已邀请:

小姐请别说爱

赞同来自:

代替:


<route =="" path="/life" render="{props"> <life sayhello="{this.sayHello//}"></life>} /&gt;





<route =="" path="/life" render="{props"> <life sayhello="{this.sayHello}"></life>} /&gt;


错误的道具接收函数调用的结果
sayHello//

而不是函数本身。
</route></route>

詹大官人

赞同来自:

您可以称之为并传达返回结果,而不是传输功能 prop.


sayHello // function object
sayHello// // function call, evaluates to return


删除括号:


render={props => <life sayhello="{this.sayHello}"></life>}


将来,看看您在控制台中看到的任何错误,并将其添加到您的问题中。 如果你试图打电话
sayHello

在组件中
Life

, 这可能看到了类似的错误:


Uncaught TypeError: undefined is not a function


通过这些信息,您可以自己找到问题,或者对那些试图提供帮助的人来说更能理解 :/

要回复问题请先登录注册