部署后,React js路由器无法通过url正确路由到页面

时间:2020-04-22 21:04:31

标签: reactjs react-native react-redux react-router react-router-dom

我部署了我的react js网站。但无法通过url加载页面。

它可以加载首页https://cekedu.netlify.app/,当我单击“登录”时,它会进入登录页面。

但是我无法通过输入网址https://cekedu.netlify.app/login直接进入登录页面。

但它可以在开发中使用。

从'react'导入React 导入'./css/typicons.min.css' 从'react-dom'导入ReactDOM 从“ ./components/user”导入用户 从“ ./components/homeHeader”导入标题 从'./components/home'导入Home 从'react-router-dom'导入{Route,BrowserRouter as Router,Switch,Link}

import './index.css'
import './css/style.css'
import './css/bootstrap-grid.css'      

class App extends React.Component{    
    render(){
      return(
        <Router>          
          <Switch>
          <Route path="/login">
            <User/>
          </Route>
          <Route path="/">
              <Home/>
          </Route>
          </Switch>              
        </Router>
      )
    }
  }

ReactDOM.render(<App />,document.getElementById('root'));

2 个答案:

答案 0 :(得分:1)

您需要确保所有路径都使用您的React应用程序的index.html页面响应。

对于netlify,请在公共文件夹中创建一个名为“ _redirects”的文件并将其添加。

/* /index.html 200

答案 1 :(得分:0)

您也可以在Home Home组件中使用“精确”道具来尝试。

<Route exact path="/"> <Home/> </Route>