reactjs - react 路由器,history.push 之后的代码运行?

标签 reactjs react-native react-router

在你的 clickHandler 上说

你做

// url change will cause this component to be dismounted and a new component will mount
history.push(url)

// do some more work 
dispatch(someMoreWork())
push 调用后代码会发生什么变化?代码能保证运行吗?

最佳答案

历史导航仅在执行 javascript 中事件队列中的同步操作后完成。

在您的情况下,javascript 将执行您调用 history.push 的函数中的所有内容,然后导航到新的 Route,这将是一个可预测的行为

您可以通过执行调度操作然后访问呈现组件中的值来简单地验证上述内容。

Check this demo 通过在 history.push 之后调度 Action 并访问渲染路由中的结果 redux 状态来演示上述行为

关于reactjs - react 路由器,history.push 之后的代码运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61846871/

相关文章:

javascript - 当屏幕尺寸变化时如何获取图像宽度?

javascript - React - 测试组件 propTypes - 预计失败

javascript - Redux 不更新组件

android-emulator - 在 android 模拟器上运行 react-native

javascript - 单击 React 组件外部时关闭菜单

reactjs - 导航到某个路径后清除位置状态

javascript - react 输入文本失去重新渲染的焦点

reactjs - 使用 Enzyme 测试无状态 React 组件内的函数

reactjs - 如何在登录页面reactJS中隐藏标题组件

javascript - 如何在 React 中渲染对象数组?