如何在React路由器中的组件内部进行重定向?

2024-03-06

如何在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:

<Route path="details/:item" name="details" component={DetailsPage}/>

我认为执行此操作的首选方法是将您在反应路由器中单击的任何元素包装起来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}`);
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在React路由器中的组件内部进行重定向? 的相关文章

随机推荐