重定向不会渲染组件

时间:2017-03-14 09:50:38

标签: reactjs react-router react-router-v4

这是问题的后续行动:
onEnter not called in React-Router

以下代码正确执行重定向,但实际上并未呈现与重定向网址相关的组件。
下面是我的代码,对上一个问题中给出的代码的一个小修改。

// Authentication "before" filter
function requireAuth(){
  if(isLoggedIn())
    return <Home />
  else
    return <Redirect to="/front"/>
}

// Render the app
render(
  <Provider store={store}>
      <Router history={history}>
        <App>
          <Switch>
            <Route path="/front" component={Front} />
            <Route path="/home" render={requireAuth} />
            <Route exact path="/" render={requireAuth} />
            <Route path="*" component={NoMatch} />
          </Switch>
        </App>
      </Router>
  </Provider>,
  document.getElementById("lf-app")
)

重定向后刷新浏览器时,页面会正确显示。

我希望渲染能够正常工作,但它不会......这是一个错误还是想要的行为?

历史:

... 
import {createBrowserHistory}           from "history";

// Init sagaMiddleware
const sagaMiddleware = createSagaMiddleware();
const store = createStore(
    appReducers,
    applyMiddleware(sagaMiddleware)
);

const history = syncHistoryWithStore(createBrowserHistory(), store);

0 个答案:

没有答案