【发布时间】:2017-08-12 09:26:25
【问题描述】:
我不想使用两个类
当按钮悬停时,如何使同级框显示为绿色?
目前所有的框都悬停在绿色上。
下面是带有sn-p的代码。
提前感谢您的帮助。
class Lol extends React.Component{
constructor(props){
super(props)
this.state = {
green : false
};
}
render = () =>{
let green = (this.state.green) ? 'green' : '';
let outs = [];
for(let i=0;i<5;i++){
outs.push(
<div>
<button onMouseOver={() => {
this.setState({green : true});
}}
onMouseLeave={() => {
this.setState({green : false});
}}
>
Turn box green
</button>
<div className={'box '+green}>
</div>
</div>
);
}
return (
<div>
{outs}
</div>
);
}
}
ReactDOM.render(<Lol />,document.getElementById("a"));
.box{
border:1px solid #000;
height:20px;
width:20px;
}
.green{
background:green;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
<div id="a">
</div>
【问题讨论】:
-
你是说像 css
+选择器这样的下一个兄弟吗? -
好吧,我删除了我的答案,因为您明确表示您不想要多个课程。请问你为什么有这个限制?
标签: javascript class reactjs events components