【发布时间】:2018-06-25 22:59:27
【问题描述】:
在 React 路由器中,我有 to 和 onClick 属性,如下所示
<li key={i}><Link to="/about" onClick={() => props.selectName(name)}>{name}</Link></li>
state = {
selectedName: ''
};
selectName = (name) => {
setTimeout(function(){this.setState({selectedName:name});}.bind(this),1000);
// this.setState({selectedName: name});
}
- to 属性导航到 about 路线
- onClick 为状态变量 selectedName 赋值,当导航到 About 页面时将显示该值。
当我在单击时调用超时内部函数时,它会导航到新页面,并且一段时间后状态会更新,导致显示以前的名称,直到状态更新为新名称。
有没有一种方法,只有在 onClick 函数中的代码执行后才会导航到新路由。
您可以在 [这里] 获取整个代码。(https://github.com/pushkalb123/basic-react-router/blob/master/src/App.js)
【问题讨论】:
标签: reactjs react-router