创建像slack这样的子域,例如:REACT JS中的https://someteam.slack.com/

问题描述 投票:0回答:1

我正在尝试实现像slack一样的功能。你们都知道在登录Slack之前,网址看起来像这个https://www.slack.com/,但是一旦你登录它就变成了https://www.team.slack.com/

所以我的反应项目有两种不同的布局(着陆布局和客户仪表板)。我要找的是......

登陆布局应该在https://www.example.com/上运行,一旦客户端成功登录,域名将变为https://www.clientname.example.com/,管理员布局将获得渲染。

需要帮助如何实现这个dynamic subdomain based渲染反应组件。

reactjs react-router subdomain slack dvajs
1个回答
0
投票

首先,将所有请求重定向到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'));
}
© www.soinside.com 2019 - 2024. All rights reserved.