react-router内联渲染道具(Auth0回调)

时间:2018-08-02 17:58:09

标签: react-router render inline auth0

使用react-router v2.4.0并尝试将Auth0的回调路由到Auth0指定的特定功能和组件。

这是我的路由器代码。 没有任何反应,似乎不支持props或{location}。我成功完成内联渲染工作的唯一方法是,只需设置render = {myTest()}路由。但是尚未能够获取和传递道具参数或其他任何东西。

是因为我正在使用v2.4.0的react-router吗?不确定我是否准备好进行v4迁移,因为这样做可能会花费我很多时间。

有什么主意吗?

import Auth from './users/authv9/Auth';
import Callback from './users/authv9/Callback';

const auth = new Auth();
const handleAuthentication = ({location}) => {

    console.log('handleAuthentication #1');
    console.log(location);

    if (/access_token|id_token|error/.test(location.hash)) {

        console.log('handleAuthentication #2');
        auth.handleAuthentication();
    }
}

ReactDOM.render((
    <Router history={browserHistory}>
        <Route path="/" component={App} auth={auth}>

            <IndexRoute component={Home} />

            <Route path="callback" render={(props) => {
                handleAuthentication(props);
                <Callback {...props} /> 
            }}/>

1 个答案:

答案 0 :(得分:0)

也许尝试

 path="/callback"

如果不是,则很可能与使用v2而不是v4