react-router 4.0以上版本添加basename
今天一个同事部署一个项目,启动不起来。我帮忙启动了,然后要求是加一个basename,也就是访问网站的时候用:http://www.XXX.com:8080/dataname
不是像平常那样: http://www.XXX.com:8080/
原因是:ngix服务器上面要放不止一个网站 根目录下面已经有一个网站,这个网站需单独建一个文件夹,就是这个需求。
下面是详细说明
组件
<BrowserRouter>
一个使用了 HTML5 history API 的高阶路由组件,保证你的 UI 界面和 URL 保持同步。此组件拥有以下属性:
basename: string
作用:为所有位置添加一个基准URL
使用场景:假如你需要把页面部署到服务器的二级目录,你可以使用 basename
设置到此目录。
<BrowserRouter basename="/minooo" />
<Link to="/react" /> // 最终渲染为 <a href="/minooo/react">