Настройте Spring с Tomcat для React - Маршрутизатор - PullRequest
0 голосов
/ 11 июля 2019

У меня есть вопрос, как правильно настроить мой маршрутизатор, потому что я думаю, что это неправильно. Раньше у нас было приложение, которое рендерило все после / (/ login, / register, / dashboard и т. Д.), Но после того, как мы добавили клиента перед ним, приложение, запущенное с сервера, получило только пустую страницу. (пример / логин, пример / регистрация и т. д.)

В основном я думаю, что причина в том, что веб-сервер не обслуживает внешнее приложение, но когда он это делает, он не распознает путь.

const tenantBase = (window.location.pathname.split('/'))[1];
console.log(tenantBase)
class App extends Component {

  constructor(props) {
    super(props);

    this.state = {
      globalClientNumber: Auth.customerId,

    };
  }

  render() {
    return (
      <div className='switchContainer'>

        <Switch>


          <Route exact={true} path={`/${tenantBase}/`} component={Login} />
          <Route exact={true} path={`/${tenantBase}/login`} component={Login} />
          <Route exact={true} path={`/${tenantBase}/register`} component={Register} />
          <Route exact={true} path={`/${tenantBase}/change_password`} component={CPassword} />
          <PrivateRoute path={`/${tenantBase}/dashboard`} component={Dashboard} />
        </Switch>

      </div>
    );
  }
}

//Private router function
const PrivateRoute = ({ component: Component, ...rest }) => {

  return (
    <Route
      {...rest}
      render={props =>
        Auth.isAuthenticated === true && Auth.customerId !== '' ? (
          <Component {...props} />
        ) : (
            <Redirect
              to={{ pathname: `/${tenantBase}/login`, state: { from: props.location } }}
            />

          )}
    />
  );
};


export default App;

Я искал в интернете, и мне кажется, что я должен использовать web-pack, но нужно ли это? Я создал свое приложение, используя create-react-app, поэтому, если мне нужно будет интегрировать его в приложение, это будет катастрофа.

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