Реагировать на приложение Redux с проблемами Netlify URL - PullRequest
0 голосов
/ 27 сентября 2018

Моя проблема проста.Я создал приложение React Redux и попытался развернуть его на Netlify.Все работало отлично, приложение онлайн, установлен SSL-сертификат, отображалась корневая страница, доменное имя ... но всякий раз, когда я пытаюсь получить доступ к одному из моих маршрутов, таким как myapp.com/login, я получаю сообщение об ошибке 404.

Ваша помощьбыл бы драгоценен и позволил бы мне наконец-то начать жить.

Большое спасибо, надеюсь, я был достаточно ясен.

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Я сомневаюсь, что ваша проблема связана с Netlify, поскольку, как объяснил Мартин, ответная реакция выполняет саму маршрутизацию.Скорее всего, происходит то, что ваш родительский компонент не имеет доступа к реквизитам реагирующего маршрутизатора, таким образом, всякий раз, когда изменяется URL-адрес, он не проходит с shouldComponentUpdate.Предполагая, что у вас правильный синтаксис, я бы попытался обернуть ваш родительский компонент с помощью withRouter следующим образом:

import {withRouter, Switch, Route} from 'react-router-dom'

class youComponent extends Component{
     constructor(props){
         super(props);
     }

     render(){
        let {teamName} = this.props;
        return(  
           <Switch>
               <Route path="/path2" component={ChildComponent} />
                ... other routes
               <Route path="/path3" render={(props) => <ChildComponent2 

teamName={teamName} />} />
              </Switch>
            )
      }
}

export default withRouter(yourComponent)

Также убедитесь, что ваши дочерние компоненты имеют доступ к реквизитам истории из Reaction-router-dom.Иногда реквизиты истории не передаются дочерним компонентам.

0 голосов
/ 27 сентября 2018

Поскольку маршрутизация в приложении React обрабатывается javascript, вполне вероятно, что вы не установили правило перенаправления.Когда вы запрашиваете определенный маршрут, сервер не находит маршрут, потому что он не знает о вашей реакции маршрутизации.По сути, вам нужно перенаправить все запросы в ваш index.html и позволить реагировать обрабатывать всю маршрутизацию.Существует руководство по настройке netlify здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...