提问者:小点点

反应-生成后使用BrowserRouter时路由器不工作


所以我有一个应用程序,它使用React-Router BrowserRouter在不同组件之间导航

代码:

return (
    <Router>
        <div className="container">
            <Navbar logged={loggedIn} />

            <Switch>
                <Route path="/" exact>
                    <Welcome />
                </Route>
                <Route path="/logout" exact>
                    <Logout loggedSet={setLoggedIn} logged={loggedIn} />
                </Route>
                <Route path="/login" exact>
                    <Login onLogin={login} loggedIn={loggedIn} />
                </Route>
                <Route path="/dashboard" exact>
                    {loggedIn ? <Dashboard /> : <Redirect to="/" />}
                </Route>
                <Route path="/add" exact>
                    {loggedIn ? <Add /> : <Redirect to="/" />}
                    <Add />
                </Route>
            </Switch>
        </div>
    </Router>
);

当我构建它时,它显示了一个空白页,我知道要在package.json中添加“homePage”:“.”。我这样做了,它不显示Navbar组件,但它发送了显示任何组件,我搜索和发现,我们需要使用哈希路由器。使用hashrouter是否正确,如果正确,如何更改我的代码使用hashrouter。

谢谢


共1个答案

匿名用户

您正在将生成放入子文件夹?。如果是,请选中以下选项:使用相对路径部署对路由器作出反应

和部署在不同位置(子目录)上的React-router应用程序