gpt4 book ai didi

javascript - 滚动时触发 ReactCSSTransitionGroup

转载 作者:行者123 更新时间:2023-11-29 16:44:27 24 4
gpt4 key购买 nike

我一直在尝试弄清楚如何在滚动时触发 react css 过渡组。假设我有一堆组件,这个例子在屏幕外呈现:

//组件.jsx

import React from 'react'
import ReactCSSTransitionGroup from 'react-addons-css-transition-group'
import './style.css'
export default class extends React.Component {
constructor() {
super()
this.state = {
title: ['an off screen title']}
}
render() {
const displayText = this.state.title.map(i => <h1 key={i}>{i.title}</h1>)
return (
<ReactCSSTransitionGroup
transitionName='atxt'
transitionEnterTimeout={1000}
transitionLeaveTimeout={1000}>
{displayText}
</ReactCSSTransitionGroup>
)
}
}

//样式.css

.atxt-enter {
opacity: 0.01;
}
.atxt-enter.atxt-enter-active {
opacity: 1;
transition: opacity 1000ms ease-in;
}
.atxt-leave {
opacity: 1;
}
.atxt-leave.atxt-leave-active {
opacity: 0.01;
transition: opacity 1000ms ease-in;
}

我希望过渡组在进入 View 时触发,而不仅仅是在组件最初呈现时触发。我一直在仔细研究文档并探索预制库/组件来实现这一点,但没有发现任何不涉及引入巨大动画库的东西......我知道 deep 我的鸟蛤有一种方法可以做到这一点,因此,在这里请教专业人士。干杯你们。

最佳答案

只是抛出一个想法:

使用https://github.com/brigade/react-waypoint在滚动到特定元素时将组件添加到 DOM。

<Waypoint onEnter={this.handleWaypointEnter} onLeave={this.handleWaypointLeave}/>

在你的handleWaypointEnter , 添加您的 <ReactCSSTransitionGroup>...</ReactCSSTransitionGroup>到dom。根据 docs,这应该有效它在进入 dom 时应用动画。

关于javascript - 滚动时触发 ReactCSSTransitionGroup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42612370/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com