reactjs set base href正在开发中

reactjs set base href正在开发中,reactjs,Reactjs,我使用“npm init react app myapp”创建了一个react应用程序。我正在通过执行npm start运行应用程序。我需要在特定路径下运行应用程序,如/myapp,类似于我们在执行'ng serve--base href/myapp/时对angular应用程序所做的操作 我正在'localhost:3000'上运行应用程序我需要在'localhost:3000/app'上运行它 我该怎么做 谢谢您的应用程序应该适用于任何路径,因此这更像是一个部署配置问题。您可以在/上本地运行,

我使用“npm init react app myapp”创建了一个react应用程序。我正在通过执行npm start运行应用程序。我需要在特定路径下运行应用程序,如/myapp,类似于我们在执行'ng serve--base href/myapp/时对angular应用程序所做的操作

我正在
'localhost:3000'上运行应用程序
我需要在
'localhost:3000/app'上运行它

我该怎么做


谢谢

您的应用程序应该适用于任何路径,因此这更像是一个部署配置问题。您可以在
/
上本地运行,然后部署到
/app
上进行生产,只需正确配置代码即可

如果路径不是
/
,则需要在index.html的标题中定义元素。在使用任何URL之前,请确保它是正确的

<base href="/app">


进行完整配置的最佳方法是将该值保存在环境变量(如或)中。

我假设您在React中使用BrowserRouter进行路由

只需添加一个属性“basename”,它将接受您要使用的基本URL的字符串

在你的情况下,它将是

<BrowserRouter basename="/app">
    ...
</BrowserRouter>

...

任何react路由器都应该使用basename前缀字符串

例如

从'react router dom'导入{HashRouter};
import { HashRouter } from 'react-router-dom'; 

<HashRouter basename="/app">
    <App />
</HashRouter>