Создайте поддомен, как это делает slack, например: https://someteam.slack.com/ в REACT JS

Я пытаюсь реализовать функцию, как слабина в реакции. Вы все знаете, прежде чем войти в Slack, URL выглядит следующим образом https://www.slack.com/, но как только вы вошли в систему, измените на https://www.team.slack.com/,

Так что у меня есть мой реактивный проект с 2 различными макетами (макет посадки и панель инструментов клиента). То, что я ищу, это..

Схема посадки должна работать на https://www.example.com/ и как только клиент успешно вошел в систему, домен получит изменение в https://www.clientname.example.com/ и админ макет получает рендер.

Нужна помощь, как это реализовать dynamic subdomain based рендеринг реагирующих компонентов.

1 ответ

Решение

Прежде всего, перенаправьте все запросы на index.html. После этого вы можете использовать window.location.host. Просто проанализируйте этот параметр и визуализируйте ваш компонент относительно проанализированных данных.

const parsedData = window.location.host.split(".");

if(parsedData.length >= 3){
    cosnt subDomain = parsedData[0];
    ReactDOM.render(<SubDomainApp subDomain={subDomain} />, document.getElementById('root'));
}else{
    ReactDOM.render(<MainApp />, document.getElementById('root'));
}
Другие вопросы по тегам