クリックしたときにBasketContents
コンポーネントを切り替える必要があるBasket
コンポーネントがあります。これは動作します:要素がフェードインします
constructor() {
super();
this.state = {
open: false
}
this.handleDropDown = this.handleDropDown.bind(this);
}
handleDropDown() {
this.setState({ open: !this.state.open })
}
render() {
return(
<div className="basket">
<button className="basketBtn" onClick={this.handleDropDown}>
Open
</button>
{
this.state.open
?
<BasketContents />
: null
}
</div>
)
}
それはBasketContents
コンポーネントを表示したりしないようにどちらかの条件を使用しています。私は今それがフェードインしたい。私はBasketContents
にComponentDidMount
フックを追加して不透明度を移行しようとしましたが、うまくいきません。これを行う簡単な方法はありますか?
https://jsfiddle.net/e7zwhcbt/2/
ここで興味深いCSSです' 'のように見えますか? ' 'をレンダリングする三項の代わりに、私はいつもレンダリングしますが、' this.state'を使用して不透明度/可視性遷移を持つクラス名を設定してください。 –
これを使うことができます - http://mxstbr.blog/2015/ 07/fade-in-react/ –