首页 > 解决方案 > 为什么运行构建后反应路由器不起作用?

问题描述

为什么反应路由器在构建后不起作用?!它在我的本地工作,但上传后不起作用

应用程序.js

import React , {Component} from 'react';
import { createBrowserHistory } from "history";
import {  Route, Switch } from "react-router-dom";

      const loggerMiddleware = createLogger();

      const store = createStore(
          rootReducer,
          applyMiddleware(thunkMiddleware,loggerMiddleware));

    return (
              <Provider store={store}>

                                <Switch>

                                    <Route   path="/login" component={Login} key="Login"></Route>
                                    <Route  exact path="/" component={Home} key="Home"></Route>
                                    <Route   path="/register" component={Register} key="Register"></Route>
                                    <Route   path="/dashboard" render={props => <RTLLayout {...props} />}/>
                                    <Route   path="/edit" component={Editor} key="Editor"></Route>
                                    
                                </Switch>
                    </Provider>                    
  

index.js

import React from 'react';
import ReactDOM from 'react-dom';
import App from './App'
//import * as serviceWorker from './serviceWorker';
import { BrowserRouter } from "react-router-dom";

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

``````

标签: reactjsreact-router-dom

解决方案


如果它在本地工作,则可能是因为您的托管。例如 Github 页面不支持 react-router,在这种情况下你应该尝试 hash router。请添加完整的 app.js 文件内容,看看是否有错误。


推荐阅读