这几天,我一直在为React使用不同的动画库,以寻找一种在视图之间(而不是路线)之间转换的解决方案,其中视图将是包裹其他组件的组件,依此类推。
到目前为止,我尝试过:
react-transtition-group
react-animations
react-spring
仍然需要尝试react-motion
的过渡...
...还有更多的东西,但是所有这些都满足我的需要,除了一件事...在应用过渡/样式的每种状态时,子组件始终会更新,触发重新渲染(顺便说一句),除非孩子的shouldComponentUpdate()
返回false或包装在PureComponent内,但这都不是解决方案,因为您可能(肯定)想这样做转换结束后组件的“事物”。
所有示例均能达到目的,但它们均出于演示目的而使用功能组件或简单字符串,不管它们是否被重新渲染,它们都不在乎,而是会记录下来的简单修改每次渲染组件时,都会显示它们在过渡期间多次渲染。
奇怪的是,似乎没有人关心或不知道。尽管这是非常真实的事,但我发现的问题或问题很少,而且关于这些库的文献也很少。
请分享您避免出现此问题的解决方案。
答案 0 :(得分:0)
我的解决方法是将转换后的子视图/视图包装在一个简单的PureComponent中,以防止它们重新呈现,但这似乎仍然不正确。