前言
写这个只是更好的梳理下我实现过程中遇到的奇奇怪怪的问题.....----
基础依赖
styled-components@3.4.2 : 写样式的
react-transition-group@2.4.0 : 路由过渡的,react官方的
react-router-dom...@4.3.1 : react自家路由
react@16.4.2
----
问题有三,亦能解决
组件堆叠问题..就是再次进入路由切换的时候,之前的元素还没有消失,而新的组件渲染了,同时出现
堆叠问题...一开始想的是去子组件区域,用shouldComponentUpdate来判断URL然后阻止渲染,发现不可行
因为过渡外部用的location.key是随机性的,所以组件每次都会重新渲染
最终的解决方案...(包括随机)
import React, { Component } from 'react';
import { TransitionGroup, CSSTransition } from 'react-transition-group