【问题标题】:React Router does not redirect on exact pathReact Router 不会在确切路径上重定向
【发布时间】:2020-09-21 19:25:40
【问题描述】:

有人可以解释为什么确切的重定向不起作用吗?

    <Provider store={store}>
        <BrowserRouter history={history}>
            <Switch>
                <Route path="/user*" component={UserApplication} />
                <Route exact from="/" to="/user/login" component={UserApplication} />
                <Route component={ ErrorFileNotFound } />
            </Switch>
        </BrowserRouter>
    </Provider>
ReactDOM.render(route, document.getElementById('root'));

如果我将第二条路由更改为它不会显示任何错误,但也不会加载 UserApplication。

用户应用程序:

class UserApplication extends React.Component {
    render() {
        console.log(this.props.location)
        return (
            <Provider store={store}>
                <BrowserRouter history={history}>
                    <Switch>
                        <Route exact from="/user" to="/user/login" component={Login} />
                        <Route path="/user/login" component={Login} />
                        <Route path="/user/register" component={Registration} />
                        <Route component={ ErrorFileNotFound } />
                    </Switch>
                </BrowserRouter>
            </Provider>
        );
    }
}
  • /user 正在根据 UserApplication 路由工作并加载 UserApplication 组件
  • /user/login 正在工作并加载 UserApplication 组件
  • /不工作并加载 ErrorFileNotFound 组件

想法是从 / 重定向到 /user/login

【问题讨论】:

  • Redirect 组件在哪里? Route 不处理重定向。

标签: reactjs react-router


【解决方案1】:

您应该使用重定向而不是路由。 Here您可以阅读更多相关信息。

【讨论】:

    猜你喜欢
    • 2020-12-19
    • 2023-02-19
    • 2016-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多