【发布时间】:2016-07-07 21:01:56
【问题描述】:
我遵循与引导网站中的叠加示例完全相同的样式,并且在网站上,当我尝试添加 rootclose 时,它无法正常工作(点击屏幕其他位置时叠加不会关闭),并且我自己的工作也一样
const Example = React.createClass({
getInitialState() {
return { show: true };
},
toggle() {
this.setState({ show: !this.state.show });
},
render() {
const style = {
position: 'absolute',
backgroundColor: '#EEE',
boxShadow: '0 5px 10px rgba(0, 0, 0, 0.2)',
border: '1px solid #CCC',
borderRadius: 3,
marginLeft: -5,
marginTop: 5,
padding: 10
};
return (
<div style={{ height: 100, position: 'relative' }}>
<Button ref="target" onClick={this.toggle}>
I am an Overlay target
</Button>
<Overlay
show={this.state.show}
onHide={() => this.setState({ show: false })}
placement="right"
container={this}
rootclose
target={() => ReactDOM.findDOMNode(this.refs.target)}
>
<div style={style}>
<strong>Holy guacamole!</strong> Check this info.
</div>
</Overlay>
</div>
);`enter code here`
}
});
ReactDOM.render(<Example/>, mountNode);
【问题讨论】:
-
试试
rootClose而不是rootclose。 -
遇到同样的问题并意识到这是因为我在触发按钮上使用了
onTouchTap而不是onClick。
标签: reactjs overlay react-bootstrap