2017-02-23 78 views
0

Мое приложение использует response + redux, я использовал для this.context.router API для перенаправления моей страницы, но официальный представитель службы подсказывает, что нам не нужно использовать API context, а также я использовал history для перенаправления страницы, а затем я получу предупреждение от console «Предупреждение: [ретранслятор-ретранслятор]. Резервы.история и контекст.история устарели. Используйте context.router.», так как я могу использовать код js для перенаправленияКак использовать код js для переадресации

+0

Какая версия 'среагировать-router' вы используете? – jakee

ответ

0

Это зависит от версии react-router

в v4 вы можете думать о redirection as a component:

class MyComponent extends Component { 
    render() { 
    return this.props.isLoggedIn ? (
     <p>You're logged in!!</p> 
    ) : (
     <Redirect to="/login" /> 
    ) 
    } 
} 

в v3 я бы рекомендовал использовать browserHistory

import { browserHistory } from 'react-router' 

class MyComponent extends Component { 
    componentDidMount() { 
    if (!this.props.isLoggedIn) browserHistory.replace('/login') 
    } 

    render() { 
    if (this.props.isLoggedIn) return (<p>You're logged in!!</p>) 
    return null 
    } 
} 
+0

спасибо, я хочу использовать js-код для перенаправления пейджера, такого как 'browserHistory.replace', абсолютно использовать' 'также можно перенаправить, но я не могу использовать метку, поэтому я использую API' history', но я буду получить предупреждение «Предупреждение: [ретранслятор] реквизит.история и context.history устарели. Используйте context.router ' – taven

 Смежные вопросы

  • Нет связанных вопросов^_^