React-淡入淡出
React- fade in and fade out
我是新手 - 我确信这是一个简单的问题,但我在寻找解决方案时遇到了很多麻烦。
所以我有两个按钮。点击第一个按钮它应该打开淡入,如果我点击同一个按钮(button1)或者如果我点击按钮(button2)它应该淡出。按钮 2 也一样。
到目前为止,我设法弄清楚淡入是如何工作的,但无法解决淡出问题。
import React, { Component } from 'react'
import { Jumbotron, Grid, Row, Col, Image, Button, Carousel,Fade,Well } from 'react-bootstrap';
import './About.css';
export default class About extends Component {
constructor(props, context) {
super(props, context);
this.state = {
buttonPressed: false,
buttonPressed1: false
//open: false
}
}
handleClick = (button) => {
this.setState({ buttonPressed: button })
}
handleClick1 = (button) => {
this.setState({ buttonPressed1: button })
}
render() {
return (
<Grid>
<button className='button1' onClick={() => this.handleClick({ open: !this.state.buttonPressed })}>
BUTTON 1
</button>
<button className='button2' onClick={() => this.handleClick1({ open: !this.state.buttonPressed1 })}>
BUTTON 2
</button>
<Fade class='fade1' in={this.state.buttonPressed}>
<div>
<Well>
first
</Well>
</div>
</Fade>
<Fade class='fade2' in={this.state.buttonPressed1}>
<div>
<Well>
second
</Well>
</div>
</Fade>
</Grid>
)
}
}
请帮忙修改关于代码。
提前致谢。
First screenshot
Second screnshot
您正在将对象而非布尔值传递给 handleClick 方法。应该是这样的:
handleClick = (button) => {
this.setState({ buttonPressed: button.open })
}
handleClick1 = (button) => {
this.setState({ buttonPressed1: button.open })
}
我是新手 - 我确信这是一个简单的问题,但我在寻找解决方案时遇到了很多麻烦。
所以我有两个按钮。点击第一个按钮它应该打开淡入,如果我点击同一个按钮(button1)或者如果我点击按钮(button2)它应该淡出。按钮 2 也一样。 到目前为止,我设法弄清楚淡入是如何工作的,但无法解决淡出问题。
import React, { Component } from 'react'
import { Jumbotron, Grid, Row, Col, Image, Button, Carousel,Fade,Well } from 'react-bootstrap';
import './About.css';
export default class About extends Component {
constructor(props, context) {
super(props, context);
this.state = {
buttonPressed: false,
buttonPressed1: false
//open: false
}
}
handleClick = (button) => {
this.setState({ buttonPressed: button })
}
handleClick1 = (button) => {
this.setState({ buttonPressed1: button })
}
render() {
return (
<Grid>
<button className='button1' onClick={() => this.handleClick({ open: !this.state.buttonPressed })}>
BUTTON 1
</button>
<button className='button2' onClick={() => this.handleClick1({ open: !this.state.buttonPressed1 })}>
BUTTON 2
</button>
<Fade class='fade1' in={this.state.buttonPressed}>
<div>
<Well>
first
</Well>
</div>
</Fade>
<Fade class='fade2' in={this.state.buttonPressed1}>
<div>
<Well>
second
</Well>
</div>
</Fade>
</Grid>
)
}
}
请帮忙修改关于代码。
提前致谢。
First screenshot
Second screnshot
您正在将对象而非布尔值传递给 handleClick 方法。应该是这样的:
handleClick = (button) => {
this.setState({ buttonPressed: button.open })
}
handleClick1 = (button) => {
this.setState({ buttonPressed1: button.open })
}