如何在 React 路由器中进行组件内部重定向?
How to make redirect inside component in React router?
如何在 React 路由中在组件内部进行重定向?我正在使用反应路由器
import React from 'react'
import _ from 'lodash';
import FavoriteItem from '../components/FavoriteItem'
const FavoritesList = ({list}) => {
let transitionToItem = ({id}) => {
// make transition to `/details/${id}`
};
return (
<ul className="list-group favorites-list">
<FavoriteItem onFavoriteClick={ () => { transitionToItem(item); } } key={item.id} item={item}/>
</ul>
);
};
export default FavoritesList
路线:
<Route path="details/:item" name="details" component={DetailsPage}/>
我认为执行此操作的首选方法是将您单击的任何元素包装在 react-router Link
元素中,让路由器处理所有内容。
<Link to=`/details/${item_id}`>Click me!</Link>
如果您确定要采用您的方法,请将 browserHistory
模块从 react-router 导入到您的组件中,然后将新的 URL 推到它上面。
import { browserHistory } from 'react-router';
...
let transitionToItem = ({id}) => {
browserHistory.push(`/details/${id}`);
};
如何在 React 路由中在组件内部进行重定向?我正在使用反应路由器
import React from 'react'
import _ from 'lodash';
import FavoriteItem from '../components/FavoriteItem'
const FavoritesList = ({list}) => {
let transitionToItem = ({id}) => {
// make transition to `/details/${id}`
};
return (
<ul className="list-group favorites-list">
<FavoriteItem onFavoriteClick={ () => { transitionToItem(item); } } key={item.id} item={item}/>
</ul>
);
};
export default FavoritesList
路线:
<Route path="details/:item" name="details" component={DetailsPage}/>
我认为执行此操作的首选方法是将您单击的任何元素包装在 react-router Link
元素中,让路由器处理所有内容。
<Link to=`/details/${item_id}`>Click me!</Link>
如果您确定要采用您的方法,请将 browserHistory
模块从 react-router 导入到您的组件中,然后将新的 URL 推到它上面。
import { browserHistory } from 'react-router';
...
let transitionToItem = ({id}) => {
browserHistory.push(`/details/${id}`);
};