我是新来的反应和反应动画。因此,在页面加载时“出现”动画一切正常。但现在我有一个问题。当我单击导航时,我希望新的 div 不仅立即显示,而且缓慢淡入(或该mather的任何其他动画),但它不起作用。
TLDR;onClick 事件不会使它刚刚设置的动画成为一个新类。
另外,也许有人知道如何使 ReactCSSTransitionGroup 仅在我浏览到网站的某些部分时才起作用?谢谢你!
import React from "react";
import ReactDOM from "react-dom";
import ReactCSSTransitionGroup from "react-addons-css-transition-group";
export default class Nav extends React.Component {
constructor() {
super();
this.state = {
navStatus: "navHide"
};
}
navClose(e) {
e.stopPropagation();
this.setState({
navStatus: "navHide",
navLines: "navLines show"
});
}
navOpen() {
this.setState({
navStatus: "navShow",
navLines: "navLines hide"
});
}
render() {
return(
<nav>
<div className={this.state.navLines} onClick={this.navOpen.bind(this)}>
</div>
<ReactCSSTransitionGroup transitionName="navShow" transitionAppear={true} transitionEnterTimeout={500} transitionLeaveTimeout={300}>
<div id="myNav" className={this.state.navStatus}>
<div className="navClose" onClick={this.navClose.bind(this)}>
<img className="navCloseBtn" src="svg/close.svg"></img>
</div>
</div>
</ReactCSSTransitionGroup>
</nav>
);
}
}