【发布时间】:2017-12-31 10:08:30
【问题描述】:
我当前的版本隐藏了每一行,但它发生得太快了,你可以看到here in my codepen。通过删除顶部元素进行复制。
我希望你的事件是这样展开的:
- 淡出
- 向上滑动
我不确定如何使用 CSS 过渡和 ReactTransitionGroup 来做到这一点
如果我能达到你看到元素消失的阶段,那么一切都聚集起来,那将是一个很好的开始!
我的过渡资料:
const CustomerList = ({ onDelete, customers }) => {
return (
<div class="customer-list">
<TransitionGroup>
{customers.map((c, i) =>
<CSSTransition
key={i}
classNames="customer"
timeout={{ enter: 500, exit: 1200 }}
>
<CustomerRow
customer={c}
onDelete={() => onDelete(i, c)}
/>
</CSSTransition>
)}
</TransitionGroup>
</div>
);
}
我的 CSS:
.customer-enter {
opacity: 0.01;
}
.customer-enter.customer-enter-active {
opacity: 1;
transition: 500ms;
}
.customer-exit {
opacity: 1;
}
.customer-exit.customer-exit-active {
opacity: 0.01;
transition: 1200ms;
}
更新
我发现使用 css 可以让两个转换依次发生 like this
.something {
width: 200px;
height: 100px;
background-color: black;
transition: background-color 200ms ease, height 200ms ease 200ms;
}
.something:hover {
height: 0px;
background-color: blue;
}
所以这只是<CSSTransition timeout={} />实际上在等待它的情况......
反应更新
我的“效果”起作用了....see codepen
但是,显然这里的元素仍然存在,这不是正确的功能行为
【问题讨论】:
标签: javascript css reactjs react-transition-group