Skip to content

Commit 1258713

Browse files
committed
fix receiveProps delete childrenShow
1 parent 6c28c9a commit 1258713

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

src/QueueAnim.jsx

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -156,18 +156,17 @@ class QueueAnim extends React.Component {
156156
);
157157

158158
const childrenShow = this.state.childrenShow;
159-
if (nextProps.enterForcedRePlay) {
160-
// 在出场没结束时,childrenShow 里的值将不会清除。再触发进场时, childrenShow 里的值是保留着的, 设置了 enterForcedRePlay 将重新播放进场。
161-
newChildren.forEach(item => {
162-
if (this.keysToLeave.indexOf(item.key) >= 0) {
163-
const node = findDOMNode(this.refs[item.key]);
164-
// 因为进场是用的间隔性进入,这里不做 stop 处理将会在这间隔里继续出场的动画。。
165-
velocity(node, 'stop');
166-
delete childrenShow[item.key];
167-
}
168-
});
169-
}
170-
159+
// 在出场没结束时,childrenShow 里的值将不会清除。再触发进场时, childrenShow 里的值是保留着的, 设置了 enterForcedRePlay 将重新播放进场。
160+
this.keysToLeave.forEach(key => {
161+
// 将所有在出场里的停止掉。避免间隔性出现
162+
// 因为进场是用的间隔性进入,这里不做 stop 处理将会在这间隔里继续出场的动画。。
163+
const node = findDOMNode(this.refs[key]);
164+
velocity(node, 'stop');
165+
if (nextProps.enterForcedRePlay) {
166+
// 清掉所有出场的。
167+
delete childrenShow[key];
168+
}
169+
});
171170

172171
this.keysToEnter = [];
173172
this.keysToLeave = [];

0 commit comments

Comments
 (0)