this.props.history的具体使用方法
时间: 2023-09-20 10:10:53 浏览: 138
this.props.history 是 React Router 提供的一个对象,它提供了一些方法来帮助我们在组件之间进行导航。
常用的方法有:
1. push(path, [state]):跳转到新的路由,并将新的路由添加到历史记录中;
2. replace(path, [state]):跳转到新的路由,但不会将新的路由添加到历史记录中,而是用新的路由替换当前路由;
3. go(n):在历史记录中向前或向后移动 n 步;
4. goBack():返回上一个历史记录;
5. goForward():前进到下一个历史记录。
例如,在一个函数组件中,我们可以这样使用 this.props.history.push 方法来跳转到新的路由:
```jsx
import React from 'react';
function MyComponent(props) {
const handleClick = () => {
props.history.push('/new-route');
};
return (
<div>
<button onClick={handleClick}>Go to new route</button>
</div>
);
}
```
需要注意的是,如果组件不是通过 Route 组件渲染出来的,那么需要使用 withRouter 高阶组件来将 history 对象传递给组件,例如:
```jsx
import { withRouter } from 'react-router-dom';
function MyComponent(props) {
// ...
}
export default withRouter(MyComponent);
```
阅读全文