reactjs - react-transition-group CSSTransition 是如何工作的?
问题描述
所以我正在尝试使用 react-transition-group 来动画应用程序不同部分之间的过渡。
我有我想要在 CSSTransition 组件中通过以下方式制作动画的组件:
return (
<CSSTransition in={showDepSearchResults} timeout={3000} classNames="fade" onEntered={() => showDepSearchResults(true)} onExit={() => showDepSearchResults(false)} >
<div className='searchResult' key='searchResult'>
<FlightSearchParameters flightSearchParams={flightSearchParams} typeOfDepartureDate={typeOfDepartureDate} typeOfReturnDate={typeOfReturnDate} typeOfTripSwitch={typeOfTripSwitch} formatPlaces={formatPlaces}/>
<h1>Vuelos {typeOfSearchTittle()} disponibles:</h1>
{showFlights()}
<button className='btn btn-secondary' onClick={(e) => handleSearchAgain(e)}>Buscar más vuelos</button>
</div>
</CSSTransition>
)
}
另外,我的 CSS 中有以下代码:
.fade-appear {
opacity: 0;
}
.fade-appear-active {
opacity: 1;
transition: opacity 3000ms;
}
.fade-enter {
opacity: 0;
}
.fade-enter-active {
opacity: 1;
transition: opacity 3000ms;
}
.fade-exit {
opacity: 1;
}
.fade-exit-active {
opacity: 0;
transition: opacity 3000ms;
}
出于某种原因,我还不能理解这是行不通的。有人对此有答案吗?
完整代码可在此处获得:https ://github.com/coccagerman/bond
提前致谢!
解决方案
我在这个图书馆也遇到了一些麻烦。我很好奇您是否尝试将appear
属性添加到<CSSTransition>
?根据Transition.js:
默认情况下,子组件在首次挂载时不执行回车转换,无论
in
. 如果您想要这种行为,请将appear
和都设置in
为true
。
请记住还要在您的 css 中定义.*-appear-enter
属性.*-appear-enter-active
。通常,它们与 ,.*-enter
相同.*-enter-active
。
推荐阅读
- python - 在 Python Plotly 中是否有与直方图分箱等效的条形图?
- asp.net-core-mvc - 在 Auth0 注销中指定自定义返回 URL 会产生错误
- python - 在 render_template 中嵌套 for、for、if 循环
- python - Python直接从包中导入函数
- google-cloud-platform - 无法在 GCP 上创建 pytorch cpu 映像
- c# - XML 没有反序列化为正确的类,并且在之后没有使用 xsi:type 属性进行序列化
- c++ - 是否可以实现自动全局强制转换?
- java - 如何将 graphql-java-extended-scalars DateTime 与 Jackson 一起使用
- java - 程序打印出所需结果的不必要重复项
- c - 如何删除具有特定值的节点?