React Router 使用 TransitionGroup 抛出重定向警告

React Router throwing redirect warnings with TransitionGroup

我正在使用 React Router 和 React Transition Group 在路由之间设置动画。我在使用 <Redirect /> 组件时遇到问题。该应用程序有效,但我从 React Router 收到多个警告,内容如下:

Warning: You tried to redirect to the same route you're currently on: "/"

您可以在 Code Sandbox 中看到它的发生。确保打开沙盒控制台,然后输入错误路径(如 codesandbox.io/abc)。

我尝试按照他们在文档中提供的示例 (https://reacttraining.com/react-router/web/example/animated-transitions),但不包括重定向。有没有更好的方法来使用重定向和转换来避免警告?

<Redirect> 在动画组件中安装时会出现此问题。

不要将动画组件包裹在 <Switch> 周围,而是包裹 <Route> 的子组件。 (您可能需要使用 <Route>render 道具与其 component 道具。)

这种方法消除了将 location 属性传递给 <Switch> 的需要——而是每个 <CSSTransition/> 引用 location.

参见示例:https://codesandbox.io/s/nn5r595joj