将React-router-dom与React-transition-group一起使用会在
我已经使用React-router-dom构建了一个站点,并希望在使用路由在页面之间进行转换时添加动画,而我已经尝试使用React-transition-group来添加动画。该站点混合了和
未捕获的恒定违反:超出最大更新深度。当组件重复调用componentWillUpdate或componentDidUpdate内部的setState时,可能会发生这种情况。 React限制了嵌套更新的数量,以防止无限循环。
该站点有几个按钮,它们执行服务器端操作,然后根据回调中设置的变量进行重定向,因此需要一些方法来执行此操作。我尝试用代码替换重定向,以编程方式处理道具的历史记录,但这突出了另一个问题,因为其中一些路线使用HOC来确保用户已登录,并且在渲染组件内时这些路线引发了相同的异常。 HOC。
之所以发生这种情况,是因为组件被重复地重新渲染,并添加了代码来确定原因,这是因为路由器的道具被重复“更改”,而它们被替换为一个新的对象,否则该对象是相同的到上一个对象。
这不是特定于React-transition-group的;我尝试用React-pose代替它,并且遇到了同样的问题。
该场景已复制到下面的沙箱中;此版本有效,但是如果在
有人可以指出我的正确方向吗? TIA。