Reactjs “反应动画”;“滑动窗口”;关于渲染更改

Reactjs “反应动画”;“滑动窗口”;关于渲染更改,reactjs,Reactjs,我有一个可以渲染不同组件的组件。我希望在渲染组件更改时进行动画过渡 例如: class Container extends React.Component { state = { showing: 'primary' } render () { const { showing } = this.state const whichComponent = (showing === 'primary') ? <Primary /> : <Seco

我有一个可以渲染不同组件的组件。我希望在渲染组件更改时进行动画过渡

例如:

class Container extends React.Component {
  state = {
    showing: 'primary'
  }
  render () {
    const { showing } = this.state

    const whichComponent = (showing === 'primary') ? <Primary /> : <Secondary />

    return (
      <div>
        {whichComponent}
      </div>
    )
  }
}
类容器扩展React.Component{
状态={
显示:“主要”
}
渲染(){
const{showing}=this.state
const whichComponent=(显示=='primary')?:
返回(
{whichComponent}
)
}
}
当状态改变并且呈现“次要”组件时,我想引入一个转换,它基本上执行SlideOut和SlideIn(但我现在要做的是任何事情)


我试过也没用,我就是找不到任何有效的方法。如果有任何指向正确方向的提示或指针,我们将不胜感激。

如果您有一个渲染主或次的条件,动画将不可能出现,因为在某一点上,次组件存在,但突然不存在。您应该使用带有“active”的className来检查是否应该显示或隐藏元素。并使用css转换将div从“”设置为“活动”。嗯,我很确定情况并非如此。您是否尝试过将淡出添加到
组件willunmount
事件中?@jmargolisv您的意思是在那里附加类?必须有一种方法来优雅地实现这一点,使用react transition group,或者其他方式(可能是react motion),不确定…这就是我的想法,但此人似乎已经发现这一点不令人满意:如果你有一个条件,渲染主要或次要,动画将不可能,因为在某一点上,次级组件在那里,突然它不在了。您应该使用带有“active”的className来检查是否应该显示或隐藏元素。并使用css转换将div从“”设置为“活动”。嗯,我很确定情况并非如此。您是否尝试过将淡出添加到
组件willunmount
事件中?@jmargolisv您的意思是在那里附加类?必须有一种优雅的方式来做到这一点,通过反应过渡组,或者其他方式(可能是反应运动),不确定……这就是我所想的,但似乎此人已经发现不令人满意: